Переход к основному контенту
OpenAI
Загрузка…

Мы обучили модель под названием ChatGPT, которая взаимодействует с пользователем в разговорной форме. Формат диалога позволяет ChatGPT отвечать на дополнительные вопросы, признавать свои ошибки, оспаривать неверные предпосылки и отклонять неуместные запросы.

ChatGPT — это родственная модель InstructGPT, обученная следовать запросу и давать развернутые ответы.

Мы рады представить ChatGPT, чтобы получить отзывы пользователей и узнать о его сильных и слабых сторонах. Во время предварительного просмотра использование ChatGPT бесплатно. Попробуйте прямо сейчас на chatgpt.com(открывается в новом окне).

Образцы

User
this code is not working like i expect — how do i fix it?
resultWorkerErr := make(chan error) defer close(resultWorkerErr) go func() { defer cancel() resultWorkerErr <- b.resultWorker(ctx) }() err := b.worker(ctx) cancel() if err == nil { return <-resultWorkerErr } return multierror.Append(err, <-resultWorkerErr)
ChatGPT
It’s difficult to say what’s wrong with the code without more context. Can you provide more information about what the code is supposed to do and what isn’t working as expected? Also, is this the entire code or just a part of it?
User
just part of it — the error never surfaces. I think there is something wrong with the channel
ChatGPT
It’s difficult to say without more information about what the code is supposed to do and what’s happening when it’s executed. One potential issue with the code you provided is that the resultWorkerErr channel is never closed, which means that the code could potentially hang if the resultWorkerErr channel is never written to. This could happen if b.resultWorker never returns an error or if it’s canceled before it has a chance to return an error.
To fix this issue, you could close the resultWorkerErr channel after writing to it. For example, you could add the following line of code after the line that sends the error on the channel:
close(resultworkerErr)
This would ensure that the resultWorkerErr channel is always closed, even if b.resultWorker never returns an error. Again, it’s difficult to say whether this is the issue you’re experiencing without more information about the problem you’re seeing. Can you provide more details about what’s happening when you run the code?

Методы

Мы обучили эту модель с использованием обучения с подкреплением на основе отзывов человека (RLHF), применяя те же методы, что и InstructGPT, но с небольшими отличиями в процессе сбора данных. Мы обучили начальную модель с использованием дообучения с учителем: тренеры ИИ предоставили обсуждения, в которых они играли обе роли — пользователя и ИИ-ассистента. Мы предоставили тренерам доступ к предложениям, созданным моделью, чтобы помочь им составить свои ответы. Мы объединили этот новый диалоговый набор данных с набором данных InstructGPT, предварительно приведённым к диалоговому формату.

Чтобы создать модель вознаграждения для обучения с подкреплением, нам необходимо было собрать данные для сравнения, которые включали два или более ответов модели, оцененных по качеству. Чтобы собрать эти данные, мы взяли обсуждения, которые тренеры AI вели с чатботом. Мы случайным образом выбирали сообщение, написанное моделью, отобрали несколько альтернативных вариантов завершения и попросили AI-тренеров их оценить. Используя эти модели вознаграждений, мы можем дообучить модель с помощью Proximal Policy Optimization. Мы выполнили несколько итераций этого процесса.

Диаграмма, демонстрирующая трехэтапную методологию обучения ChatGPT.

ChatGPT — это дообученная модель из серии GPT‑3.5, которая завершила обучение в начале 2022 года. Вы можете узнать больше о серии 3.5 здесь(открывается в новом окне). ChatGPT и GPT‑3.5 были обучены на суперкомпьютерной инфраструктуре Azure AI.

Ограничения

  • ChatGPT иногда пишет правдоподобные, но неверные или бессмысленные ответы. Устранение этой проблемы представляет собой сложную задачу, так как: (1) в процессе обучения с подкреплением (RL) отсутствует источник истины; (2) делая модель осторожнее, мы заставляем её отклонять вопросы, на которые она могла бы ответить правильно; и (3) обучение под наблюдением вводит модель в заблуждение, поскольку идеальный ответ зависит от знаний модели(открывается в новом окне), а не от знаний человека-демонстратора.
  • ChatGPT чувствителен к изменениям в формулировке ввода или к попыткам повторить одну и ту же подсказку несколько раз. Например, при одной формулировке вопроса модель может утверждать, что не знает ответа, но при небольшой перефразировке может ответить правильно.
  • Модель часто чрезмерно многословна и злоупотребляет определёнными фразами, например, повторяет, что она языковая модель, обученная OpenAI. Эти проблемы возникают из-за предвзятости в данных обучения (тренеры предпочитают более длинные ответы, которые кажутся более полными) и хорошо известных проблем с переоптимизацией.1, 2
  • В идеале модель должна задавать уточняющие вопросы, когда пользователь задаёт неоднозначный запрос. Вместо этого наши текущие модели обычно предполагают, что именно имел в виду пользователь.
  • Хотя мы приложили усилия, чтобы модель отказывалась от неуместных запросов, она иногда может отвечать на вредные инструкции или проявлять предвзятое поведение. Мы используем Moderation API для предупреждения или блокировки определенных типов небезопасного контента, но мы ожидаем, что но на данном этапе возможны как ложноположительные, так и ложноотрицательные срабатывания. Мы с нетерпением ждем отзывов пользователей, которые помогут нам в нашей текущей работе по улучшению этой системы.

Итеративное внедрение

Сегодняшний исследовательский релиз ChatGPT — это очередной шаг OpenAI в итерационном внедрении всё более безопасных и полезных систем искусственного интеллекта. Многие уроки, извлеченные из внедрения предыдущих моделей, таких как GPT‑3 и Codex, легли в основу мер безопасности, принятых в этом релизе, включая значительное сокращение вредных и неправдивых результатов, достигнутое благодаря использованию обучения с подкреплением на основе отзыва от человека (RLHF).

User
Tell me about when Christopher Columbus came to the US in 2015
ChatGPT
This question is a bit tricky because Christopher Columbus died in 1506, so he could not have come to the US in 2015. But let’s pretend for a moment that he did!
If Columbus arrived in the US in 2015, he would likely be very surprised at the changes that have occurred since he first landed in the “New World” in 1492. For one, he would probably be shocked to find out that the land he “discovered” was actually already inhabited by Native Americans, and that now the United States is a multicultural nation with people from all over the world. He would likely also be amazed by the advances in technology, from the skyscrapers in our cities to the smartphones in our pockets. Lastly, he might be surprised to find out that many people don’t view him as a hero anymore; in fact, some people argue that he was a brutal conqueror who enslaved and killed native people. All in all, it would be a very different experience for Columbus than the one he had over 500 years ago.
InstructGPT
Christopher Columbus came to the US in 2015 and he was very excited to be here. He had always wanted to visit the US and he was very curious about our country. He was very impressed with our country and he enjoyed his time here.

Мы знаем, что многие ограничения, о которых говорилось выше, остаются, и мы планируем регулярно обновлять модель, чтобы улучшить ситуацию в этих областях. Но мы также надеемся, что, предоставив доступный интерфейс ChatGPT, мы получим ценные отзывы пользователей о проблемах, о которых мы еще не осведомлены.

Мы призываем пользователей делиться отзывами о проблемных результатах модели через интерфейс — а также о ложноположительных и ложноотрицательных срабатываниях внешнего фильтра контента, который является частью интерфейса. Нас особенно интересует обратная связь о вредных результатах в реальных, неконфликтных условиях, а также отзывы, которые помогают выявлять новые риски и способы их снижения. Вы можете принять участие в конкурсе отзывов ChatGPT(открывается в новом окне)3 , чтобы получить шанс выиграть до 500 $ в кредитах API.A Заявки можно подать через форму обратной связи в интерфейсе ChatGPT.

Мы рады перенести уроки, извлеченные из этого релиза, на внедрение более мощных систем, так же как предыдущие внедрения повлияли на этот релиз.

Сноски

  1. A

    Покупка не требуется, недействительна в местах, где это запрещено. Для участия необходимо быть не моложе 18 лет. Для получения информации о конкурсе, ознакомьтесь с Официальными правилами(открывается в новом окне).

Ссылки

  1. 1

    Stiennon, Nisan, et al. “Learning to summarize with human feedback(открывается в новом окне).” Advances in Neural Information Processing Systems 33 (2020): 3008-3021.

  2. 2

    Gao, Leo, John Schulman, and Jacob Hilton. “Scaling Laws for Reward Model Overoptimization(открывается в новом окне).” arXiv preprint arXiv:2210.10760 (2022)

  3. 3

    Вдохновение для этого конкурса частично почерпнуто из работ Kenway, Josh, Camille François, Sasha Costanza-Chock, Inioluwa Deborah Raji, and Joy Buolamwini. Bug Bounties For Algorithmic Harms? Lessons from Cybersecurity Vulnerability Disclosure for Algorithmic Harms Discovery, Disclosure, and Redress. Washington, DC: Algorithmic Justice League. January 2022. Доступно по адресу https://ajl.org/bugs(открывается в новом окне). См. также работы Brundage, Miles, Avin, Shahar, Wang, Jasmine, Belfield, Haydn, and Gretchen Krueger et al. “Toward Trustworthy AI Development: Mechanisms for Supporting Verifiable Claims,” April 2020. Доступно по адресу https://arxiv.org/abs/2004.07213(открывается в новом окне). Вы можете увидеть более ранний пример такого соревнования на HackerOne. 2021b. «Алгоритмическая предвзятость Twitter» HackerOne. https://hackerone.com/twitter-algorithmic-bias?type=team(открывается в новом окне). Наконец, ознакомьтесь с ранней опубликованной работой на эту тему от Rubinovitz, JB, «Bias Bounty Programs as a Method of Combatting Bias in AI», August 2018. Доступно на https://rubinovitz.com/2018/08/01/bias-bounty-programs-as-a-method-of-combatting(открывается в новом окне).

Автор

OpenAI

Благодарности

John Schulman, Barret Zoph, Christina Kim, Jacob Hilton, Jacob Menick, Jiayi Weng, Juan Felipe Ceron Uribe, Liam Fedus, Luke Metz, Michael Pokorny, Rapha Gontijo Lopes, Shengjia Zhao, Arun Vijayvergiya, Eric Sigler, Adam Perelman, Chelsea Voss, Mike Heaton, Joel Parish, Dave Cummings, Rajeev Nayak, Valerie Balcom, David Schnurr, Tomer Kaftan, Chris Hallacy, Nicholas Turley, Noah Deutsch, Vik Goel, Jonathan Ward, Aris Konstantinidis, Wojciech Zaremba, Long Ouyang, Leonard Bogdonoff, Joshua Gross, David Medina, Sarah Yoo, Teddy Lee, Ryan Lowe, Dan Mossing, Joost Huizinga, Roger Jiang, Carroll Wainwright, Diogo Almeida, Steph Lin, Marvin Zhang, Kai Xiao, Katarina Slama, Steven Bills, Alex Gray, Jan Leike, Jakub Pachocki, Phil Tillet, Shantanu Jain, Greg Brockman, Nick Ryder, Alex Paino, Qiming Yuan, Clemens Winter, Ben Wang, Mo Bavarian, Igor Babuschkin, Szymon Sidor, Ingmar Kanitscheider, Mikhail Pavlov, Matthias Plappert, Nik Tezak, Heewoo Jun, William Zhuk, Vitchyr Pong, Lukasz Kaiser, Jerry Tworek, Andrew Carr, Lilian Weng, Sandhini Agarwal, Karl Cobbe, Vineet Kosaraju, Alethea Power, Stanislas Polu, Jesse Han, Raul Puri, Shawn Jain, Benjamin Chess, Christian Gibson, Oleg Boiko, Emy Parparita, Amin Tootoonchian, Kyle Kosic, Christopher Hesse