flutter 我如何在chatgpt API中有不同的聊天?

eoxn13cs  于 2023-06-07  发布在  Flutter
关注(0)|答案(1)|浏览(207)

我不确定是否有可能在一个API中有不同的聊天到chatgpt。
我的目标有几个:

  • 用户可以与chatgpt对话
  • 用户只能访问自己的对话我的问题是:
  • 我不能区分用户之间的时刻,我找不到任何帮助。

我试着查看文档和stackoverflow并使用chatgpt,但没有任何效果。
我如何区分聊天记录?
下面的代码运行良好。

import 'dart:convert';

import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:http/http.dart' as http;

class OpenAI {
  static Future<String> chatGPT(String prompt) async {
    final String url = 'https://api.openai.com/v1/chat/completions';

    String? gptKey = dotenv.env['GPT'];

    final response = await http.post(
      Uri.parse(url),
      headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer $gptKey',
      },
      body: jsonEncode({
        'model': 'gpt-3.5-turbo',
        'messages': [
          {'role': 'system', 'content': 'You are a helpful assistant.'},
          {'role': 'user', 'content': prompt},
        ],
      }),
    );

    if (response.statusCode == 200) {
      final jsonResponse = jsonDecode(response.body);
      final choices = jsonResponse['choices'] as List<dynamic>;
      final reply = choices.first['message']['content'] as String;
      // print('chatgpt response $reply');
      return reply;
    } else {
      return 'Failed to process the request. Status code: ${response.statusCode}';
    }
  }
}

相关问题