кочан Проучване на интерпретатора на кодове ChatGPT на OpenAI: Задълбочено потапяне в неговите възможности – Unite.AI
Свържете се с нас

Бърз инженеринг

Проучване на интерпретатора на кодове ChatGPT на OpenAI: Задълбочено потапяне в неговите възможности

mm
Обновено on

Напредъкът на OpenAI в обработката на естествен език (NLP) е белязан от възхода на големите езикови модели (LLM), които са в основата на продукти, използвани от милиони, включително асистента за кодиране GitHub Copilot и търсачката Bing. Тези модели, чрез уникалната си способност да запомнят и обединяват информация, са поставили несравними стандарти в задачи като генериране на код и текст.

Разбиране на кодовия интерпретатор на ChatGPT

За да разберете значението на интерпретатора на кодове на ChatGPT, важно е първо да разберете какво представлява той и как е създаден.

По същество интерпретаторът на кодове на ChatGPT използва възможностите на ChatGPT, но въвежда подобрени умения в разбирането, интерпретирането и дори генерирането на код в безброй езици за програмиране. Тази функция трансформира ChatGPT от текстов генератор в безценен инструмент за разработчиците, подпомагащ разбирането на кода, отстраняването на грешки и дори генерирането на код.

Обучение GPT за кодиране: Подходът на Codex

И двете Копилот на GitHub намлява Кодов интерпретатор на ChatGPT използвайте Модел Codex разработен от OpenAI.

Codex, специализиран езиков модел на GPT, е проектиран да има опитни възможности за писане на код на Python. Обучен на публично достъпен код от GitHub, Codex демонстрира потенциала си чрез захранване на функции в GitHub Copilot. Когато се оценява за способността му да синтезира програми от низове на документи, мярка за функционална коректност, Codex превъзхожда и двете GPT-3 намлява GPT-J.

Поразително наблюдение е, че многократното вземане на проби подобрява уменията на Codex. Когато се използват до 100 проби за проблем, степента на успех на модела се увеличава до 70.2%. Такава ефективност предполага възможността за използване на евристично класиране за избиране на точни проби от код, без да се налага пълна оценка за всяка.

За да се оценят неговите възможности, на модела беше възложено да създаде самостоятелни функции на Python, базирани единствено на документни низове. След това точността на генерирания код беше оценена с помощта на единични тестове. В набор от данни, включващ 164 оригинални програмни задачи, които включват езиково разбиране, алгоритми и основни математически тестове, Codex с 12B параметри решава 28.8% от тях с един опит.

Данни за обучение за Codex Model - интерпретатор на код chatgpt

Данни за обучение за модел на Codex: https://arxiv.org/abs/2107.03374

Чрез допълнително усъвършенстване на модела чрез фина настройка на правилно внедрени самостоятелни функции, неговата ефективност беше повишена, което доведе до решаване на Codex-S 37.7% предизвикателства от първия опит. Въпреки това, в практическата сфера на програмирането подходът проба-грешка е често срещан. Имитирайки този сценарий от реалния свят, моделът Codex-S, когато му бяха дадени 100 шанса, беше успешно адресиран 77.5% на предизвикателствата.

Chatgpt фино настроена архитектура

Генеративните модели като ChatGPT, които произвеждат код, обикновено се оценяват чрез сравняване на генерирани проби с референтно решение. Това сравнение може или да бъде точно, или да използва мярка за сходство като резултата BLEU. Въпреки това, тези базирани на съвпадение показатели често не успяват да разберат нюансите на кодирането. Ключова критика на BLEU е неговата неефективност при улавяне на семантичните характеристики на кода.

Вместо да се разчита единствено на съвпадение, беше предложена по-подходяща мярка: функционална коректност. Това означава, че кодът, произведен от модела, трябва да премине даден набор от модулни тестове. Идеята е в съответствие със стандартните практики за кодиране, тъй като разработчиците често използват модулни тестове, за да преценят ефикасността и точността на своя код.

Този показател оценява не само точността, но и функционалната използваемост на генерирания код.

- пас@к метрика се въвежда като мярка за функционална коректност. Това по същество означава, че ако някоя от "k" генерираните кодови проби премине тестовете на модула, проблемът се счита за решен. Въпреки това, вместо просто да се използва това в неговата директна форма, се използва безпристрастен оценител за изчисляване на pass@k, за да се избегне висока дисперсия.

За да оцени възможностите на кода на ChatGPT, изследването използва HumanEval набор от данни. Този набор от данни се състои от ръкописни проблеми на Python, всеки от които е придружен от модулни тестове.

Chatgpt пример за отворен набор от данни за обучение на изкуствен интелект

https://github.com/openai/code-align-evals-data/blob/main/human_eval

Като се имат предвид рисковете, свързани с изпълнението на неизвестен или ненадежден код, средата на пясъчник е проектирана да тества безопасно генерирания код. Тази използвана среда gVisor за емулиране на ресурси и създаване на бариера между хост системата и изпълнявания код. По този начин, дори ако моделът произвежда злонамерен код, той остава ограничен и не може да навреди на хоста или мрежата.

Използване на интерпретатор на кодове ChatGPT

ChatGPT на OpenAI претърпя множество еволюции, като Code Interpreter се откроява като революционна функция в GPT-4 модел. За разлика от традиционните интерфейси за чат, Code Interpreter позволява на потребителите да се потопят по-дълбоко в изчислителните задачи, безпроблемно смесвайки линиите между разговори човек-AI и изчислителни процеси.

В основата си Code Interpreter е подобен на компютър, вграден в chatbot. Тази динамична функция предлага на потребителите временно дисково пространство за качване на множество файлови формати, вариращи от общи типове като TXT, PDF и JPEG до по-специализирани като CPP, PY и SQLite. Тази широчина на поддръжка увеличава неговата гъвкавост при различни задачи, било то обработка на документи или манипулиране на изображения.

Работейки в стабилна и сигурна рамка, Code Interpreter е оборудван с над 300 предварително инсталирани библиотеки. Тази среда в пясъчна среда гарантира сигурност, като същевременно осигурява значителна изчислителна мощност. Интересното е, че когато получи задача, той изработва скрипт на Python в реално време, за да изпълни заявката на потребителя. Вземете, например, конвертиране на PDF базиран на изображения във формат с възможност за търсене с помощта на OCR; всичко, което потребителят трябва да направи, е да качи документа, а ChatGPT се грижи за останалото.

Точка на интрига е ограничението за размера на файла за качване. Докато окончателните спецификации все още не са обявени, потребителските експерименти показват, че системата може ефективно да обработва файлове, значително по-големи от 100MB. Независимо от размера, важно е да се отбележи, че тези файлове са преходни и се изхвърлят след приключване на чат сесията.

Блясъкът на Code Interpreter не е само неговата техническа мощ, но и неговата достъпност. OpenAI предлага тази функция на абонатите на ChatGPT Plus, който идва с модела GPT-4. По този начин този трансформиращ инструмент не е само за технологичния елит, но постепенно става достъпен за по-широка аудитория.

Разликата между стандартния модел ChatGPT и Code Interpreter се крие в техните парадигми на взаимодействие. Докато първото основно генерира текстови отговори, второто разбира и изпълнява код, предлагайки директни резултати. Това не само го прави ценен актив за техническите професионалисти, но също така дава възможност на тези без познания по кодиране да изпълняват сложни изчислителни задачи.

Възможностите на ChatGPT Code Interpreter могат да революционизират няколко аспекта на разработката на софтуер и Data Science:

  • Автоматизирано генериране на код: Както за софтуерни приложения, така и за скриптове за анализ на данни, при описание на високо ниво, системата може да създаде типови структури или сложни кодови фрагменти, ускорявайки процесите на разработка и анализ на данни.
  • Прегледи на кодове и валидиране на данни: Инструменти, управлявани от AI, като ChatGPT, могат да помогнат за подобряване на качеството и сигурността на софтуерните кодови бази. Освен това, в сферата на науката за данни, такива инструменти могат да бъдат инструмент за преглед и валидиране на скриптове за обработка и трансформация на данни, като гарантират точност и ефективност.
  • Помощ при анализ на данни: За специалистите по данни, интерпретаторът на кодове на ChatGPT може да помогне при генерирането на код за предварително проучване на данни, визуализация и дори основни статистически тестове, като по този начин улеснява работния поток за анализ на данни.

Ако желаете да намерите повече за тънкостите на ChatGPT и бързото инженерство, Unite AI предлага изчерпателна разбивка в "ChatGPT: Усъвършенствано бързо инженерство'.

Настройване на интерпретатор на кодове на ChatGPT

Интеграцията на Code Interpreter позволява на платформата да интерпретира потребителски заявки, да ги изпълнява като код на Python и да показва резултатите в интерактивен чат формат. За достъп до тази функция потребителите могат да навигират до ChatGPT настройки, разгледайте секцията с бета функции и активирайте кодовия интерпретатор.

Това, което го отличава, е неговият прозрачен механизъм. Когато потребителите подканят задача, платформата разкрива всяка стъпка от процеса на обработка, предлагайки яснота за това как командите се интерпретират и изпълняват. Важно е, че от съображения за поверителност и сигурност Code Interpreter работи без интернет връзка.

Проучване на предимствата на интерпретатора на кодове ChatGPT

Визуализация на данни и Анализ

ChatGPT надхвърля обхвата на традиционните диаграми, предлагайки както конвенционални, така и иновативни графични изображения. Това гарантира, че потребителите могат да преглеждат своите данни във формати, които предоставят най-смислената информация.

Не става въпрос обаче само за визуализиране на необработени данни. Моделът ChatGPT е опитен в обработката и прецизиране на данни. Въпреки че е мощен, потребителите трябва да бъдат внимателни.

Финансовите анализатори ще намерят особено полезна способността на Code Interpreter да анализира и визуализира курсовете на акции. Чрез безпроблемна интеграция потребителите могат да качват набори от данни и да ги визуализират в различни формати. Значението на тази функция е очевидно, когато хората могат да извършват сложни анализи на данни.

Видеото по-долу демонстрира как кодовият интерпретатор на ChatGPT създаде цялостен TSLA анализ на запасите.

Ключови храни за вкъщи:

  • Акциите на Tesla са изправени пред нестабилност, но също така показаха устойчивост с периоди на растеж.
  • Високите обеми на търговия в определени дни показват значителен пазарен интерес или реакции на ключови събития.
  • Низходящата възвръщаемост от началото на годината (YTD) предполага, че инвеститорите трябва да анализират както вътрешните фактори на компанията, така и външните пазарни условия, когато обмислят бъдещи инвестиции.

Внедряване на компютърно зрение и OCR

Разпознаването на лица, основна функция в компютърното зрение, беше подходено с класическа техника: Каскаден класификатор на Haar от OpenCV.

Изображението по-долу показва използването на класическия каскаден класификатор на Haar.

Процесът на извличане на текст от изображения, известен като оптично разпознаване на символи (OCR), беше постигнат безпроблемно с помощта на Tesseract, като текстът впоследствие се структурира от GPT-4, подобрявайки разбираемостта.

В следващото видео вижте как Tesseract (OCR) извлича текст от изображение на сертификат.

Кодовият интерпретатор превъзхожда в областта на манипулирането на видео, аудио и изображения. С ясни команди потребителите могат да постигнат детайлни редакции, като например конвертиране на GIF файлове в MP4 със специфични подобрения. Просто качете вашия файл, въведете желаните от вас модификации и гледайте как се случва магията.

Външна библиотека на Python във вашия интерпретатор на код ChatGPT

ChatGPT Code Interpreter е динамична платформа за програмиране, оборудвана с обширен набор от библиотеки на Python. Те обхващат всичко - от визуализация на данни със Seaborn до разширено машинно обучение чрез Torch. Но това е повече от статичен инструментариум.

Вдъхновен от това Chatgpt страница от Коракот Чаоваванич.

Започвайки с най-новото nltk освобождаване, ние качихме .whl файл в Преводача. След това инструктирахме ChatGPT да намери подходящата директория за пакети на сайта, като анализира местоположението на съществуващ пакет. Следващата стъпка включваше разопаковането на файла с колелото до временно място и преместването на файловете в идентифицираната директория на пакетите на сайта. Това обаче удари на камък.

Търсейки заобиколно решение, ние подканихме: „Моля, уверете се, че NLTK се инсталира в средата на Python и е достъпен след инсталирането.“

ChatGPT отговори, предоставяйки решение. Той предложи добавяне на временна директория към sys.path, което позволява на Python да идентифицира и изтегля модули от разопакования пакет nltk в това местоположение. Тази тактика направи чудеса, което доведе до успешното инсталиране на NLTK.

Чрез използването на .whl файлове, инсталацията показа комбинация от изобретателност и адаптивност. Интерпретаторът на кодове на ChatGPT, въпреки първоначалните предизвикателства, демонстрира своята гъвкавост и ангажираност към задоволяване на нуждите на програмистите, като гарантира както на начинаещите, така и на ветераните в рафинирано изживяване при кодиране.

инсталиране на персонализирани библиотеки в интерпретатора на код chatgpt

В завладяваща витрина на възможностите на преводача, скорошен туит от @DominikPeters подчерта уникална демонстрация. Питърс поиска от GPT-4 да генерира тест за парижките райони и моделът предостави добре функциониращ уебсайт. Работният тест е достъпен за практическо изживяване на адрес dominik-peters.de/gpt-arrondissement-quiz/.

Завършвайки

Пробивът на OpenAI с интерпретатора на кодове ChatGPT не е нищо друго освен трансформация както за кодиращите, така и за некодериращите. Неговата гъвкавост при справянето с широк набор от задачи – от подпомагане на разработчиците при отстраняване на грешки до безпроблемно създаване на парижки викторини – е доказателство за безграничния потенциал на AI за подобряване на нашите цифрови преживявания. Ето дестилирана есенция от нашето дълбоко гмуркане:

Разберете своя инструмент: Точно както бихте се сприятелили с колега, запознайте се с Code Interpreter. Той е проектиран върху Codex, който е фино настроен от GPT-4. Владеенето му обхваща множество езици за програмиране, което го прави идеален спътник за всички ваши приключения с кодиране.

Прегърнете AI революцията: Традиционните практики за кодиране са на път да видят сеизмична промяна. С инструменти, управлявани от изкуствен интелект, като ChatGPT Code Interpreter, задачи като идентифициране на грешки, генериране на код и дори прегледи на код могат да бъдат ускорени.

Отвъд просто код: Набегът на Преводача не е ограничен до текст или код. Способността му да работи с множество файлови формати, от прости TXT файлове до сложни PY скриптове, подчертава неговата полезност в различни домейни.

Никога не спирайте да експериментирате: Нашето проучване с инсталацията на библиотеката NLTK отразява важността на постоянството и адаптивността, ценности, които кодовият интерпретатор въплъщава. Ако има проблем, често има начин да го заобиколите.

Присъединете се към AI разговора: Приложенията от реалния свят, както беше показано от теста за парижкия район, подчертават огромната полезност на инструмента в реалния свят. Прегърнете го, изследвайте го и го оставете да разшири вашите проекти.

Горният видеоклип е направен с помощта на Ген-2 намлява По средата на пътуването.

За да обобщим, ChatGPT Code Interpreter е повече от просто инструмент; променя начина, по който се свързваме с технологиите. Както за новатори, така и за ентусиасти, той обещава свят, пълен с потенциал за кодиране.

Прекарах последните пет години, потапяйки се в завладяващия свят на машинното обучение и дълбокото обучение. Моята страст и опит ме накараха да допринеса за над 50 различни проекта за софтуерно инженерство, със специален фокус върху AI/ML. Продължаващото ми любопитство също ме насочи към обработката на естествен език, област, която нямам търпение да проуча по-нататък.