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

【电机控制器】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* doubao_apiKey = "你需要改的地方";
 
// Send request to OpenAI API
String inputText = "你好,豆包!";
String apiUrl = "https://ark.cn-beijing.volces.com/api/v3/chat/completions";
 
String answer;
String getGPTAnswer(String inputText) {
  HTTPClient http;
  http.setTimeout(20000);
  http.begin(apiUrl);
  http.addHeader("Content-Type", "application/json");
  String token_key = String("Bearer ") + doubao_apiKey;
  http.addHeader("Authorization", token_key);
  String payload = "{\"model\":\"你需要改的地方\",\"messages\":[{\"role\":\"system\",\"content\":\"你是我的AI助手vor,你必须用中文回答且字数不超过85个\"},{\"role\":\"user\",\"content\":\"" + inputText + "\"}],\"temperature\": 0.3}";
 
  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["choices"][0]["message"]["content"];
    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('\r');  //  \r表示结束符为回车符
    // inputText.trim();
    Serial.println("\n Input:" + inputText);
 
    answer = getGPTAnswer(inputText);
    Serial.println("Answer: " + answer);
    Serial.println("Enter a prompt:");
  }
  // delay(2);
}

三、实验结果

在这里插入图片描述
在这里插入图片描述

四、参考资料

【ESP32接入国产大模型之豆包】
esp32C3合宙 连接豆包AI
【ESP32接入语言大模型之通义千问】_esp32接入大模型
立创开发板入门ESP32C3第八课 修改AI大模型接口为deepseek3接口

总结

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


http://www.kler.cn/a/556777.html

相关文章:

  • 基本认证 vs OAuth 2.0 vs OpenID Connect
  • 关于uniapp使用renderJS中调用父类方法和参数的使用
  • 命令执行漏洞 Command Execute
  • 深入解析Textual库:打造现代化的终端用户界面(TUI)
  • 深度学习之图像回归(二)
  • 华为云镜像加速器
  • HTML 的 script 标签中 defer 和 async 的区别
  • 中国游戏厂商出海拉美市场策略及收单方式
  • Windows10配置C++版本的Kafka,并进行发布和订阅测试
  • LeetCode2595
  • 【Spring Bean如何保证并发安全?】
  • 华为动态路由-OSPF-综合案例
  • 客户关系管理系统(源码+文档+演示+讲解)
  • 计算机专业知识【深入理解 IP 地址与子网掩码:从 /27 到不同 CIDR 表示】
  • FPGA DSP:Vivado 中带有 DDS 的 FIR 滤波器
  • adb shell setprop获取日志
  • 解锁外观模式:Java 编程中的优雅架构之道
  • 【HeadFirst系列之HeadFirst设计模式】第6天之单件模式:独一无二的对象,如何优雅实现?
  • eBPF驱动的实时内核安全防护体系:构建零日漏洞免疫的云原生基础设施
  • Git介绍和使用