Проблемы с кодированием предсказаний OpenAI после точной настройки
Я следую этому руководству OpenAI по тонкой настройке.
Я уже создал набор данных с помощью инструмента openai. Проблема в том, что кодировка выходных данных (результат вывода) смешивает UTF-8 с символами, отличными от UTF-8.
Сгенерированная модель выглядит так:
{"prompt":"Usuario: Quién eres\\nAsistente:","completion":" Soy un Asistente\n"}
{"prompt":"Usuario: Qué puedes hacer\\nAsistente:","completion":" Ayudarte con cualquier gestión o ofrecerte información sobre tu cuenta\n"}
Например, если я спрошу «¿Cómo estás?» и есть подготовленное завершение для этого предложения: «Estoy bien, ¿y tú?», вывод часто возвращает точно то же самое (что хорошо), но иногда он добавляет некодированные слова: «Estoy bien, ¿y tú? Cuà © ntame algo de ti ", добавив"é"вместо"é".
Иногда он возвращает точно такое же предложение, для которого было обучено, без проблем с кодировкой. Я не знаю, берет ли вывод некодированные символы из моей модели или откуда-то еще.
Что я должен делать? Следует ли кодировать набор данных в UTF-8? Должен ли я оставить набор данных с UTF-8 и декодировать неверно закодированные символы в ответе?
В документации OpenAI для тонкой настройки ничего не говорится о кодировании.
1 ответ
Я столкнулся с той же проблемой, связанной с португальскими строками.
Попробуй использовать
.encode("cp1252").decode()
после строки:
"Cuéntame algo de ti".encode("cp1252").decode()
Это должно привести к:
"Cuéntame algo de ti"
cp1252
относится к кодеку windows-1252 Western Europe. Если это не работает, попробуйте другой кодек отсюда:https://docs.python.org/3.7/library/codecs.html#standard-encodings