Как сохранить ответы ChatGPT в теме?

Я работаю над приложением для чата, которое использует ChatGPT, чтобы дать им некоторую информацию по определенной теме.

Допустим, тема: «Цвета».

Теперь ответы ChatGPT зависят от того, что набрал пользователь. Как я могу заставить его придерживаться только одной темы.

Например:

Каков цвет Солнца?

Теперь этот вопрос действителен и связан с цветом.

Но если Пользователь спросит

Что такое 1+2?

Теперь это недействительно, поскольку контекст или тема не имеют «цвета».

Итак, как можно обеспечить это?

Часть кода, который я написал в DART

      Future<(ChatGtpResponseModel?,ChatErrorResponseModel?)> getChatGtpResponse(String content) async {
  final headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer $apiKey',
    'OpenAI-Organization': 'org-SOMETHING'
  };

  // const prompt = '\n' + 'Remember to not answer requests or questions not related directly to Color.';
  var data = jsonEncode(ChatGtpRequestModel(
    // model:'gpt-3.5-turbo',
    model: 'gpt-4',
    messages: [
      Message(role: 'assistant', content: content),
      Message(role: 'system', content: 'You are a clever, funny, and friendly agent focused on sharing information regarding Color. Do not answer requests or questions not related to it.'),
      Message(role: 'user', content: 'You are a clever, funny, and friendly agent focused on sharing information regarding Color. Do not answer requests or questions not related to it.'),
    ],
    temperature: 0,
  ));
  final url = Uri.parse('https://api.openai.com/v1/chat/completions');
  final res = await http.post(url, headers: headers, body: data);
  if (res.statusCode != 200) {
    var model = ChatErrorResponseModel.fromJson(json.decode(res.body));
    return (null,model);
  }
  var model = ChatGtpResponseModel.fromJson(json.decode(res.body));
  return (model,null);
}

Но это не относится к этой теме.

0 ответов

Другие вопросы по тегам