Если я сохраняю ответ в файл, то получаю текст с чашкой кофе - "
Если сразу отобразить это в браузере, то получится такой текст - "�� Три чашки кофе это
Код: Выделить всё
$tempName = tempnam(sys_get_temp_dir(), 'ai_response').'.txt';
$response = Http::sink($tempName)
->withHeaders([
"Content-Type" => "application/json",
"Authorization" => "Bearer " . config('services.open_ai.api_key')
])->post('https://api.openai.com/v1/chat/completions', [
"model" => $model,
"temperature" => $temperature,
"n" => $n,
"messages" => $messages,
]);
Storage::putFile('tmp/ai', new File($tempName));
$content = Arr::pluck($response->json('choices'), 'message.content');
GenerationModel::create(
Arr::map($content, fn($i) => ['content' => $i])
);
dd($content);

< /p>
Не могу понять, почему некоторые символы UTF-8 отображаются нормально, а другие вызывают проблемы. Как я могу это исправить или отследить?
P.S. При копировании текста в браузере (редакторе) и вставке его в поле базы данных текст вставляется и сохраняется! А вот если сохранить его (в БД) сразу после получения от OpenAI, то мы получим пустой текст
Подробнее здесь: https://stackoverflow.com/questions/786 ... e-database