OpenAI chat stream模式的消息组件该如何实现呢?

来源:9-12 本章总结

crixus

2024-03-22

老师你好,基于OpenAI chat stream模式的消息组件该如何实现呢?可以讲解下思路并且给出一些依赖或实现吗?
图片描述

写回答

1回答

CrazyCodeBoy

2024-03-23

参考下
import 'dart:convert';
import 'dart:io';

void streamOpenAIResponse(String prompt) async {
  HttpClient client = HttpClient();
  HttpClientRequest request = await client.postUrl(Uri.parse('https://api.openai.com/v1/engines/text-davinci-003/completions'));
 
  request.headers.set('Content-Type', 'application/json');
  request.headers.set('Authorization', 'Bearer YOUR_API_KEY');

  // 设置请求体,启用stream
  request.add(utf8.encode(json.encode({
    "prompt": prompt,
    "max_tokens": 50,
    "temperature": 0.7,
    "stream": true,
  })));

  HttpClientResponse response = await request.close();

  // 监听响应流
  response.transform(utf8.decoder).listen((content) {
    print(content); // 这里处理每一块接收到的数据
  });
}

void main() {
  String yourPrompt = "Here is your prompt";
  streamOpenAIResponse(yourPrompt);
}
1
0

ChatGPT + Flutter快速开发多端聊天机器人App

ChatGPT + Flutter快速开发多端聊天机器人App

343 学习 · 90 问题

查看课程