complete method
Completes a user prompt.
Implementation
@override
Future<Completion?> complete(String prompt) async {
final url = Uri.parse("https://api.openai.com/v1/chat/completions");
final data = buildRequestData(prompt);
final headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $apiKey"
};
final response =
await http.post(url, body: jsonEncode(data), headers: headers);
if (response.statusCode != 200) {
throw Exception('Error: ${response.body}');
}
final result = Completion.fromJson(response.body);
updateTool(result);
return result;
}