Skip to content
Natalia Zemlak edited this page Jan 27, 2024 · 1 revision

快速开始

  • 初始化

    #include <ChatBot.h>
    OpenAIData chatData;
    chatData.api_key = "sk-xxxx";//设置你的API_Key
    ChatBot bot(chatData);//初始化
  • 会话

    • 提交对话
    bot.Submit("Hello","user");//对话内容,及对话模式 默认为user
    bot.SubmitAsync("Hello","user");//异步提交对话内容,及对话模式 默认为user
    • 保存会话
      bot.Save("Conversation Name");//保存会话,默认为default
    • 加载会话

      bot.Load("Conversation Name");//加载会话 默认为default
    • 删除会话

      bot.Del("Conversation Name");//删除会话
    • 重置会话

      bot.Reset();//重置当前会话
  • 日志功能

    • Log::LogTrace()
    • Log::LogInfo()
    • Log::LogWarn()
    • Log::LogError()
    • Log::LogFatal()
  • 语音转文本

    • 初始化
    #include <VoiceToText.h>
    OpenAIData Data;
    Data.api_key = "sk-xxx";//your api key
    VoiceToText voiceToText(Data);
    • 转化
        string res=voiceToText.Convert("path to voice file");
  • 对话功能

    • 初始化
      #include <Listener.h>
      Listener listener(sampleRate, framesPerBuffer);
      listener.listen();//开始倾听
    • 使用示例
      #include <ChatBot.h>
      #include <Listener.h>
      OpenAIData chatData;
      chatData.api_key = "sk-xxxx";//设置你的API_Key
      ChatBot bot(chatData);//初始化
      Listener listener(sampleRate, framesPerBuffer);
      listener.listen();//开始倾听
      while (true) {
          auto recordedData = listener.getRecordedData();
          if (!recordedData.empty()) {
              std::string text = voiceToText.Convert(recordedData);
              std::string response = bot.Submit(text, "user");
              LogInfo(response);
              listener.ResetRecorded();
          }
      }
  • 翻译

    • 初始化(百度翻译api)
      #include <Translate.h>
      TranslateData data;
      data.appid="xxx";
      data.APIKey="xxx";
      Translate translator(data);
    • 使用例子
      #include <Translate.h>
      TranslateData data;
      data.appid="xxx";
      data.APIKey="xxx";
      Translate translator(data);
      LogInfo(translator.translate("Good morning","jp","en"));
      //将会输出"おはよ"
  • 窗口

    • 初始化
      #include <Application.h>
      Configure config;
      /*
      struct Configure {
          OpenAIData openAi;
          TranslateData baiDuTranslator;
          VITSData vits;
          WhisperData whisper;
      };
       * */
      Application app(config);
    • 使用
      #include <Application.h>
      auto configure = Utils::LoadYaml<Configure>("config.yaml");
      Application app(config);
      app.Renderer();
Clone this wiki locally