Автоматизируйте помощь в кодировании с ChatGPT и Python для VS Code
Используйте мощь ChatGPT и Python, чтобы создать настраиваемого помощника по программированию для VS Code. Автоматизируйте решения, отвечайте на вопросы и повышайте производительность прямо в вашей среде разработки.
19 февраля 2025 г.

Раскройте силу ChatGPT и Python, чтобы создать свой собственный персонализированный помощник по программированию. Этот блог-пост проведет вас через процесс создания универсального инструмента, который может отвечать на вопросы и предоставлять insights прямо в вашей среде разработки, повышая вашу производительность и способность решать проблемы.
Как создать собственного помощника по программированию с ChatGPT и Python
Настройка среды и импорт необходимых библиотек
Инициализация истории чата
Сбор ввода пользователя и построение сообщений
Взаимодействие с API ChatGPT и получение ответа
Отображение ответа помощника и обновление истории чата
Заключение
Как создать собственного помощника по программированию с ChatGPT и Python
Как создать собственного помощника по программированию с ChatGPT и Python
Чтобы создать собственного помощника по программированию с использованием API ChatGPT и Python, выполните следующие шаги:
- Установите ваш API-ключ в качестве переменной среды.
- Установите библиотеку OpenAI и импортируйте ее в начале вашего кода.
- Создайте пустой список сообщений, который будет представлять историю чата. Каждое сообщение - это словарь с двумя атрибутами:
role
иcontent
. - Добавьте системное сообщение в историю чата, которое предоставляет инструкции помощнику.
- Настройте цикл, который будет собирать новые сообщения от пользователя с помощью
input()
. - Создайте новый словарь сообщения с вводом пользователя и добавьте его в историю чата.
- Сделайте вызов API OpenAI к конечной точке завершения чата, передав модель (
GPT-3.5-turbo
) и историю чата. - Извлеките содержимое ответа помощника из ответа API и сохраните его в переменной.
- Выведите ответ помощника, добавив несколько новых строк в начале и конце.
- Создайте новый словарь сообщения с ответом помощника и добавьте его в историю чата.
- Повторите процесс, позволяя пользователю продолжать взаимодействовать с помощником по программированию.
Эта настройка обеспечивает простой, но мощный помощник по программированию, который вы можете запускать вместе со своим кодом в VS Code, позволяя получать ответы и идеи о вашем коде непосредственно в вашей среде разработки.
Настройка среды и импорт необходимых библиотек
Настройка среды и импорт необходимых библиотек
Чтобы настроить среду и импортировать необходимые библиотеки, выполните следующие шаги:
-
Установите ваш API-ключ OpenAI в качестве переменной среды. Это гарантирует, что ваш API-ключ будет храниться в безопасности и не будет раскрыт в вашем коде.
-
Установите библиотеку
openai
с помощью pip:pip install openai
-
Импортируйте библиотеку
openai
в начале вашего кода:import openai
С этими шагами вы успешно настроили среду и импортировали необходимую библиотеку для взаимодействия с API ChatGPT.
Инициализация истории чата
Инициализация истории чата
Чтобы инициализировать историю чата, мы сначала создаем пустой список, называемый `messages`. Этот список будет хранить историю разговора между пользователем и помощником AI.
Каждое сообщение в истории чата представлено как словарь с двумя ключами: `role` и `content`. Ключ `role` указывает на источник сообщения, либо `"system"` для системных инструкций, либо `"user"` для ввода пользователя. Ключ `content` хранит фактический текст сообщения.
Мы начинаем с добавления сообщения "system" в список `messages`. Это сообщение служит в качестве скрытой инструкции для помощника AI, предоставляя контекст или руководящие принципы для разговора.
```python
messages = []
system_message = {
"role": "system",
"content": "You are a helpful coding assistant."
}
messages.append(system_message)
С инициализированной историей чата мы можем перейти к основному циклу программы, где пользователь может взаимодействовать с помощником AI.
Сбор ввода пользователя и построение сообщений
Сбор ввода пользователя и построение сообщений
Чтобы собирать ввод пользователя и конструировать сообщения, мы следуем этим шагам:
- Создайте пустой список для хранения истории чата.
- Создайте сообщение "system" в качестве первого сообщения в истории чата. Это сообщение предоставляет скрытые инструкции помощнику.
- Настройте цикл, который будет работать бесконечно.
- Внутри цикла соберите новое сообщение от пользователя с помощью функции
input()
. - Создайте новый словарь сообщения с вводом пользователя, установив "role" на "user".
- Добавьте новое сообщение пользователя в список истории чата.
Этот процесс позволяет нам накапливать контекст разговора, который будет передан в API OpenAI, когда мы будем делать вызов для генерации ответа.
Взаимодействие с API ChatGPT и получение ответа
Взаимодействие с API ChatGPT и получение ответа
Чтобы взаимодействовать с API ChatGPT и получить ответ, мы будем следовать этим шагам:
- Установите API-ключ OpenAI в качестве переменной среды.
- Установите библиотеку OpenAI и импортируйте ее в начале кода.
- Создайте пустой список для хранения истории чата, где каждое сообщение представлено как словарь с ключами
role
иcontent
. - Добавьте сообщение "system" в историю чата, которое предоставляет скрытые инструкции помощнику.
- Настройте цикл, который непрерывно собирает ввод пользователя и добавляет его в историю чата как сообщение "user".
- Сделайте вызов API к конечной точке завершения ChatGPT, передав историю чата в качестве входных данных.
- Извлеките содержимое ответа помощника из ответа API и сохраните его в переменной.
- Выведите ответ помощника, добавив несколько новых строк для лучшей читаемости.
- Создайте новое сообщение "assistant" с содержимым ответа и добавьте его в историю чата.
- Повторите процесс, позволяя пользователю продолжать взаимодействовать с помощником по программированию.
Отображение ответа помощника и обновление истории чата
Отображение ответа помощника и обновление истории чата
Чтобы отобразить ответ помощника и обновить историю чата, мы следуем этим шагам:
1. Получите содержимое ответа помощника из вызова API:
```python
reply = response.choices[0].message.content
-
Выведите ответ помощника с некоторым форматированием:
print("\n\n" + reply + "\n\n")
-
Создайте новый словарь сообщения для ответа помощника:
assistant_message = { "role": "assistant", "content": reply }
-
Добавьте сообщение помощника в историю чата:
messages.append(assistant_message)
Это гарантирует, что ответ помощника будет отображаться в четком и читаемом формате, и история чата будет обновлена новым сообщением от помощника. Обновленная история чата будет использоваться в последующих вызовах API для предоставления контекста ответам помощника.
Заключение
Заключение
В этом руководстве мы научились создавать мощного помощника по программированию с использованием API ChatGPT и Python. Конечный продукт позволяет вам запускать скрипт вместе с вашим кодом в VS Code, предоставляя вам полезного помощника, который может отвечать на вопросы и предоставлять идеи о коде, который вы пишете.
Основные шаги, необходимые для создания этого помощника, включают:
- Настройку вашего API-ключа в качестве переменной среды.
- Установку библиотеки OpenAI и импортирование ее в ваш Python-скрипт.
- Создание списка сообщений для представления истории чата, начиная с системного сообщения.
- Реализацию цикла для непрерывного сбора ввода пользователя и добавления его в историю чата.
- Выполнение вызова API к конечной точке завершения ChatGPT, передавая историю чата.
- Извлечение ответа из API и добавление его в историю чата как сообщение помощника.
Следуя этому процессу, вы можете легко интегрировать мощного помощника на основе AI в свой рабочий процесс разработки, открывая новые уровни производительности и эффективности.
Часто задаваемые вопросы
Часто задаваемые вопросы

