当前位置: 首页 > news >正文

【电机控制器】ESP32-C3语言模型——通义千问

【电机控制器】ESP32-C3语言模型——通义千问


文章目录

    • @[TOC](文章目录)
  • 前言
  • 一、简介
  • 二、代码
  • 三、实验结果
  • 四、参考资料
  • 总结

前言

使用工具:


提示:以下是本篇文章正文内容,下面案例可供参考

一、简介

二、代码

#include <WiFi.h>
#include <HTTPClient.h>
#include <ArduinoJson.h>

// 1. Replace with your network credentials
const char* ssid = "你需要改的地方";
const char* password = "你需要改的地方";

// 2. Replace with your OpenAI API key
const char* apiKey = "你需要改的地方";

// Send request to OpenAI API
String inputText = "你好,通义千问!";
String apiUrl = "https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation";

String answer;
String getGPTAnswer(String inputText) {
  HTTPClient http;
  http.setTimeout(10000);
  http.begin(apiUrl);
  http.addHeader("Content-Type", "application/json");
  http.addHeader("Authorization", String(apiKey));
  String payload = "{\"model\":\"qwen-turbo\",\"input\":{\"messages\":[{\"role\": \"system\",\"content\": \"你是鹏鹏的生活助手机器人,要求下面的回答严格控制在256字符以内。\"},{\"role\": \"user\",\"content\": \"" + inputText + "\"}]}}";
  int httpResponseCode = http.POST(payload);
  if (httpResponseCode == 200) {
    String response = http.getString();
    http.end();
    Serial.println(response);

    // Parse JSON response
    DynamicJsonDocument jsonDoc(1024);
    deserializeJson(jsonDoc, response);
    String outputText = jsonDoc["output"]["text"];
    return outputText;
    // Serial.println(outputText);
  } else {
    http.end();
    Serial.printf("Error %i \n", httpResponseCode);
    return "<error>";
  }
}

void setup() {
  // Initialize Serial
  Serial.begin(115200);

  // Connect to Wi-Fi network
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  Serial.print("Connecting to WiFi ..");
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print('.');
    delay(1000);
  }
  Serial.println(WiFi.localIP());
  answer = getGPTAnswer(inputText);
  Serial.println("Answer: " + answer);
  Serial.println("Enter a prompt:");

}

void loop() {
  // do nothing
  if (Serial.available()) {
    inputText = Serial.readStringUntil('\n');
    // inputText.trim();
    Serial.println("\n Input:"+inputText);

    answer = getGPTAnswer(inputText);
    Serial.println("Answer: " + answer);
    Serial.println("Enter a prompt:");
  }
  // delay(2);
}



三、实验结果

通义千问也抽风
在这里插入图片描述

四、参考资料

通过API使用通义千问
【ESP32接入语言大模型之通义千问】

总结

本文仅仅简单介绍了【电机控制器】ESP32-C3语言模型——通义千问,评论区欢迎讨论。

相关文章:

  • 数据库 安装initializing database不通过
  • 货车一键启动无钥匙进入手机远程启动的正确使用方法
  • 【SpringBoot】——分组校验、自定义注解、登入验证(集成redis)、属性配置方式、多环境开发系统学习知识
  • python zipfile
  • 在spring项目中,引入mybatis
  • PCB设计常用布局布线方法
  • 错误 MSB3073 命令“setlocal“
  • Vue中环境配置的若干问题解决
  • 蓝桥杯刷题-dp-线性dp(守望者的逃离,摆花,线段)
  • HTML解析 → DOM树 CSS解析 → CSSOM → 合并 → 渲染树 → 布局 → 绘制 → 合成 → 屏幕显示
  • Redis存储​⑫​哨兵Sentinel_高可用实现方案
  • [C]基础10.深入理解指针(2)
  • 数据结构--排序
  • 一个std::async的示例
  • 鸿蒙Next-方法装饰器以及防抖方法注解实现
  • 项目管理的数字化转型:趋势与实践——从工具革新到效率革命
  • Spring MVC 的执行流程解析:从用户请求到响应返回
  • Linux设备驱动开发-UART驱动
  • Linux权限 -- 开发工具
  • 爬虫运行后如何保存数据?
  • 郴州做网站/深圳网站建设 手机网站建设
  • 色情网站是怎么建设的/学网络运营在哪里学比较好
  • 建设征信注册中心网站/互联网营销师证书有用吗
  • 我是做装修的怎么样投资网站/搜索引擎优化的根本目的
  • 做游戏模型挣钱的网站/宁波seo推广如何收费
  • 符合三网标准的网站建设/今日大新闻