Abstract and keywords
Abstract (English):
This article examines the possibilities of using ChatGPT to automate the identification and analysis of text information in the C# programming language. A description of ChatGPT, its application for processing text information and the advantages of using this technology will be considered.

Keywords:
ChatGPT, C#, automation, text information, analysis, application, benefits
Text
Text (PDF): Read Download

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

Разработка технологии ChatGPT началась с модели GPT, аббревиатура с Generative Pre-trained Transformer, разработанная OpenAI в 2018 году. Так как полученная технология оказалась удачной, то появились улучшенные версии данной модели – GPT-2 и GPT-3. Технология ChatGPT основан на модели GPT-3 где в качестве алгоритмов обработки текстовых данных стали следующие направления: чат-боты, системы виртуального ассистента и системы генерации и обработки текстовых данных. Особенность последнего направления строится на системе вопрос-ответ, в котором система на основе огромной базы знаний генерирует текстовую информацию построенную на вопросе пользователя, оформляет ее по шаблону сформированным на принципе подобия с другими документами и отправляет в удобной для получателя форме на языке пользователя. Для взаимодействия языка программирования с ChatGPT была разработана библиотека OpenAI GPT-3 API [2], [3], [7], [8]. Работа ChatGPT состоит из нескольких этапов: построение модели, обработка запроса пользователя, генерация ответа на запрос пользователя.

Опираясь на алгоритмическую конструкцию обработки текстовых данных следует уточнить, следующие параметры – что является параметром запроса, по какому алгоритму или правилу запрос строится, чтобы он мог быть построен программно, как выполняется генерация текста по запросу, чтобы мы могли разработать алгоритмы обработки данных, и как выполняется генерация ответа.

Рассматривая документацию по использования библиотеки OpenAI GPT-3 API для языка программирования C# можно выделить ответы на поставленные выше ответы. Так ChatGPT выполняет генерацию текста путём анализа текста запроса и выполняет обработку собственной базы текстов на соответствие слов запроса релевантной информации в своей базе данных. На основании полученных результатов системы выполняет генерацию ответа по выстроенным логическим цепочкам аналогичных запросов. Полученный ответ затем преобразовывается системой в предложенный разработчиком интерфейс пользователя где чаще всего используются или через веб-интерфейс, так и напрямую через программный интерфейс (API). При работе с запросом следует помнить, что при решении поставленной задачи система ChatGPT разбивает запрос на две составляющие – ключевые слова и логика запроса, ключевые слова отвечают за подбор информации по соответствию текста повторяющимся словам и выражениям, а логика запроса может включать как анализ тональности, так и выявление ключевых проблем, на которые построен запрос. Поэтому, использование технологии ChatGPT в разработке программ позволяет создать систему, способную как обрабатывать большие объемы текста, так и выделять ключевую информацию и обеспечивать аналитику на основе текстовых данных. Это дает программисту более простой подход в построении ПО со сложными алгоритмами обработке текстовой информации.

В качестве среды разработки ПО содержащего большие массивы текстовых данных будем использовать Microsoft Visual Studio и язык программирования C#. Наш выбор на данную среду пал из-за возможности интегрирования различных библиотек, в частности и библиотеку ChatGPT, а также широкими возможностями языка C# позволяющего работать с внешними библиотеками и онлайн системами [1], [5], [6]. Интеграция библиотеки в Microsoft Visual Studio выполняется через команду Install-Package OpenAI.Gpt, где в проект будут импортированы необходимые библиотеки.

Выбор языка C# был нами определен также из-за особенности использования ChatGPT в проектах которая заключается в необходимости ее авторизации. Для этого необходимо сначала провести регистрацию на сайте OpenAI и получить ключ с помощью которого выполняется авторизация. Разработчик получает ключ самостоятельно, при этом пользователю ПО этим заниматься нет необходимости. Авторизация на сайте OpenAI выполняется согласно программному коду, представленному на рисунке 1. Разработчик формирует экземпляр класса Gpt3 и через функцию API передать ключ авторизации на сайт OpenAI. Затем данный экземпляр класса может быть использован для генерации данных. Особенность ChatGPT состоит в том, что в запросе мы указываем условие запроса, как и в любом формальном языке, при этом точность поставленного запроса влияет на получаемый ответ. Для построения запроса используется параметр prompt. ChatGPT позволяет также к тексту прилагать такой параметр как "творческость" который дает возможность системе генерации «отходить» от «жестко поставленного вопроса», давая творчество ChatGPT. При этом меняя данный параметр в значениях от 0 до 1 мы можем создать мало предсказуемый текст. В запросе параметр "творческость" задан служебным параметром temperature. И последний параметр, maxTokens, определяет количество блоков генерируемого текста. Данный параметр также зависит от условий решаемых задач и подбирается разработчиком ПО индивидуально.

 

Рисунок 1 – Использование метода Complete для отправки запроса и получения ответа

 

После выполнения программного кода, рисунок 1, программа сохранит полученные данные в объекте Response. При этом объект Response представляет собой множество текстовых данных разделенных маркером и общее количество таких записей в объекте определяется параметром maxTokens. С каждой записью программист может выполнять различные манипуляции, в частности, вывести их на экран. Для этого можно использовать следующую команду

Console.WriteLine(response.Choices[0].Text);

На рисунке 2 нами представлен полный код запроса и вывода информации на экран. C# с полученной информацией позволяет выполнять не только вывод данных на экран, но и сохранять данные в файл, или передавать другим системам и т.д. Выбор действий над данными зависит только от поставленной задачи [4], [9].

 

Рисунок 2 – Полный код запроса и сохранение ответа с использованием технологии ChatGPT

 

Выполним оценку актуальности использования средств ChatGPT в системе обработки данных. Рассмотрим на двух программных кодах, представленных на рисунках 3 и 4 систему обработки больших объемов текстовых данных как с использованием собственных средств языка программирования C#, так и средствами ChatGPT. Особенность обработки средствами языка программирования C# состоит в том, что текст изначально разбивается на элементы динамического массива. Массив данных для упрощенной обработки затем преобразуется в коллекцию и к ней применяется алгоритм обработки данных, и полученный результат формируется в новый массив донных. Все операции требуют, как больших данных для хранения, так и имеют сложность O(n). При формировании системы анализа текста средствами ChatGPT, программист задает только систему анализа через функцию AnalyzeText и вывод полученного результата. Здесь отпадает необходимость формирования динамических массивов, что уменьшает занимаемую память и упрощает систему обработки данных задач ключевое слово для обработки, а не строя сложную систему запросов [4], [9].

 

Рисунок 3 – Программный код без использования ChatGPT

 

Рисунок 4 – Программный код с использованием ChatGPT

 

Поэтому, при разработке ПО с большим объемом текстовых данных можно рекомендовать использование как среду разработки Microsoft Visual Studio и язык программирования C#, так и средства ChatGPT для генерации и обработки больших массивов текстовых данных. Крове выше сказанного ChatGPT позволяет также упростить решение следующих задач:

  • проводить анализ больших объемов текстовой информации, выделять ключевые слова текста, задавать тональность и смысловую нагрузку текста;
  • использовать интерфейс API для интеграции данных в различные программные продукты и платформы;
  • разрабатывать ПО с элементами само обучаемости.

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

References

1. Kiseleva, A. A. Ispol'zovanie chatGPT v obrazovanii: preimuschestva i nedostatki / A. A. Kiseleva // Galaktika nauki-2023, Krasnodar, 19–22 aprelya 2023 goda / Kubanskiy gosudarstvennyy universitet. T. 4. – Krasnodar: Kubanskiy gosudarstvennyy universitet, 2023. – S. 53-57. – EDN TSDTVF.

2. Tyuginbaev, D. D. K voprosu o funkcionirovanii yazykovyh modeley: kak rabotaet chatgpt / D. D. Tyuginbaev // Iskusstvennyy intellekt i bol'shie dannye (Big data) v sudebnoy i pravoohranitel'noy sisteme: realii i trebovanie vremeni: MATERIALY MEZhDUNARODNOY NAUChNO-PRAKTIChESKOY KONFERENCII, Astana, 19 maya 2023 goda. – Kosshy: Akademiya pravoohranitel'nyh organov pri General'noy prokurature Respubliki Kazahstan, 2023. – S. 96-99. – EDN UJUKKL.

3. Nurgaliev, T. S. Kak rabotaet chatgpt / T. S. Nurgaliev // Pervye shagi v nauku tret'ego tysyacheletiya: Materialy XIX Vserossiyskoy studencheskoy nauchno-prakticheskoy konferencii, Neftekamsk, 18 aprelya 2023 goda. – Ufa: Ufimskiy universitet nauki i tehnologiy, 2023. – S. 146-148. – EDN OUMWOA.

4. Stepanov, V. K. Vozmozhnosti primeneniya yazykovoy modeli iskusstvennogo intellekta ChatGPT-3.5 v bibliotechno-bibliograficheskoy deyatel'nosti / V. K. Stepanov, M. Sh. Madzhumder, D. D. Begunova // Nauchno-tehnicheskaya informaciya. Seriya 1: Organizaciya i metodika informacionnoy raboty. – 2023. – № 7. – S. 11-21. – DOIhttps://doi.org/10.36535/0548-0019-2023-07-2. – EDN UYTXLS.

5. Liferenko, K. V. Pascal and C# programming languages: a comparative analysis / K. V. Liferenko, A. I. Gerasimov // Molodezh'. Obschestvo. Sovremennaya nauka, tehnika i innovacii. – 2022. – No. 21. – P. 55-57. – EDN VTSQFX.

6. Nikitin, A. E. Razrabotka praktikuma po izucheniyu ob'ektno-orientirovannogo yazyka programmirovaniya C# dlya starshih klassov / A. E. Nikitin // Aktual'nye problemy sovremennoy nauki: vzglyad molodyh uchenyh: Materialy Mezhdunarodnoy nauchno-prakticheskoy konferencii, Groznyy, 26–27 aprelya 2019 goda. – Groznyy: Chechenskiy gosudarstvennyy pedagogicheskiy universitet, 2019. – S. 530-534. – EDN ZCVRGH.

7. Belyakova, Yu. V. Koncept-parametry kak mehanizm razvitiya sredstv obobschennogo programmirovaniya v yazyke C# / Yu. V. Belyakova, S. S. Mihalkovich // Sovremennye informacionnye tehnologii i IT-obrazovanie. – 2015. – T. 11, № 2. – S. 205-213. – EDN WAQFBP.

8. Oksyuta, O.V. Razrabotka matematicheskoy modeli optimal'nogo funkcionirovaniya transportno-logisticheskogo kompleksa / O.V.Oksyuta, V.A. Korotkih // Modelirovanie sistem i processov. – 2017. – T. 10, № 3. – S. 55-66.

9. Zol'nikov K.V. Koordinaciya proektnyh rabot v oblasti SNK i slozhno funkcional'nyh blokov / Zol'nikov K.V., Anciferova V.I., Evdokimova S.A., Grechanyy S.V. // Modelirovanie sistem i processov. 2020. T. 13. № 3. S. 71-76.

10. Poluektov A.V., Makarenko F.V., Yagodkin A.S. Ispol'zovanie storonnih bibliotek pri napisanii programm dlya obrabotki statisticheskih dannyh // Modelirovanie sistem i processov. – 2022. – T. 15, № 2. – S. 33-41.

Login or Create
* Forgot password?