Библиотека NestJS для создания эффективных, масштабируемых и быстрых решений с использованием API OpenAI Assistant (чат-боты).
Начните разработку AI Assistant менее чем за 15 минут
Представляем библиотеку NestJS. Независимо от того, создаете ли вы виртуального помощника или интерактивного чат-бота для взаимодействия с пользователем, наша библиотека дает вам возможность использовать передовые возможности искусственного интеллекта с минимальными усилиями.
Библиотека предоставляет готовые к использованию конечные точки API, обрабатывающие вашего помощника и сервер WebSocket для связи между клиентом и помощником в реальном времени. Установите библиотеку и вставьте конфигурацию, чтобы она заработала.
Видео — AI-помощник за 15 минут
Репозиторий содержит библиотеку, а также предоставляет дополнительные функции. Вы можете просто клонировать репозиторий и мгновенно использовать его, чтобы получить все преимущества:
В этом разделе вы узнаете, как интегрировать библиотеку AI Assistant в ваше приложение NestJS. Следующие шаги проведут вас через процесс настройки библиотеки и создания простых функций.
^20.0.0
)^10.0.0
)^10.0.0
)^4.51.0
)Откройте или создайте приложение NestJS, в которое вы хотите интегрировать AI Assistant. Чтобы создать новое приложение NestJS, используйте следующую команду:
nest new project-name
Теперь вам нужно установить пакеты. Перейдите к следующему шагу.
Убедитесь, что вы находитесь в корневом каталоге вашего проекта. Установите библиотеку и пакет openai
с помощью npm:
npm i @boldare/openai-assistant openai --save
Библиотека установлена, но нам нужно ее настроить. Перейдите к следующему шагу.
Настройте переменные среды, создайте переменные среды в файле .env
в корневом каталоге проекта и заполните его необходимыми секретами. Идентификатор помощника не является обязательным и служит уникальным идентификатором вашего помощника. Если переменная среды не установлена, помощник будет создан автоматически. Вы можете использовать идентификатор помощника для подключения к существующему помощнику, который можно найти на платформе OpenAI после создания помощника.
Создайте файл .env
в корневом каталоге вашего проекта и заполните его необходимыми секретами:
touch .env
Добавьте в файл .env
следующее содержимое:
# OpenAI API Key
OPENAI_API_KEY =
# Assistant ID - leave it empty if you don't have an assistant to reuse
ASSISTANT_ID =
Обратите внимание, что файл .env
не следует помещать в репозиторий. Добавьте файл .env
в файл .gitignore
, чтобы предотвратить его фиксацию.
Это был первый шаг, необходимый для запуска библиотеки. Следующий шаг — настройка помощника.
Библиотека предоставляет способ настройки помощника с помощью метода AssistantModule.forRoot
. Метод принимает объект конфигурации в качестве аргумента. Создайте новый файл конфигурации, как в образце файла конфигурации (chat.config.ts), и заполните его необходимой конфигурацией.
// chat.config.ts file
import { AssistantConfigParams } from '@boldare/openai-assistant' ;
import { AssistantCreateParams } from 'openai/resources/beta' ;
// Default OpenAI configuration
export const assistantParams : AssistantCreateParams = {
name : 'Your assistant name' ,
instructions : `You are a chatbot assistant. Speak briefly and clearly.` ,
tools : [ { type : 'file_search' } ] ,
model : 'gpt-4-turbo' ,
temperature : 0.05 ,
} ;
// Additional configuration for our assistant
export const assistantConfig : AssistantConfigParams = {
id : process . env [ 'ASSISTANT_ID' ] ,
params : assistantParams ,
filesDir : './apps/api/src/app/knowledge' ,
toolResources : {
file_search : {
// Provide files if you use file_search tool
fileNames : [ 'example1.txt' , 'example2.txt' ] ,
} ,
} ,
} ;
Более подробную информацию о конфигурации можно найти в вики.
Теперь вы можете запустить приложение и вызвать помощника.
Вызов функций позволяет расширить возможности помощника за счет пользовательской логики. Если вы не собираетесь использовать вызов функций, вы можете перейти к: Шаг 5: Тестирование.
Создайте новую службу, расширяющую класс AgentBase
, заполните определение и реализуйте метод output
.
output
— это основной метод, который будет вызываться при вызове функции помощником.definition
— это объект, который описывает функцию и ее параметры, чтобы помощник мог понять, как ее вызвать.Для получения дополнительной информации о вызове функций вы можете обратиться к документации OpenAI.
Инструкции по созданию функции можно найти в вики, а примеры — в каталоге агентов.
Если вы определили функцию и метод вывода, теперь вы можете вызвать ее из помощника, просто попросив его выполнить действие, описанное в определении функции.
Запустите приложение, и это позволит вам протестировать помощника.
# use this if you are using the repository:
npm run start:dev
# if you are using your own NestJS application, please check the npm scripts in the package.json file
# defualt command for NestJS is:
npm run start
Затем вы можете протестировать помощника.
/assistant/threads
с пустым объектом в теле ./assistant/chat
со следующим телом: {
"threadId" : " your-thread-id " ,
"content" : " Hello, how are you? "
}
/assistant/chat
с тем же телом, что и на шаге 2.Поздравляю! Вы успешно интегрировали библиотеку AI Assistant в свое приложение NestJS. ?
Полную документацию по запуску демо-версии со всеми приложениями и библиотеками из репозитория можно найти в вики.
Инженеры Boldare всегда готовы вам помочь. Если у вас есть какие-либо вопросы или вам нужна помощь с внедрением, закажите звонок одному из наших инженеров.
Узнайте больше, как Boldare может помочь вам в разработке ИИ .
Вы также можете задавать вопросы в разделе «Обсуждения» GitHub.
Хотите увидеть новые возможности в библиотеке?
@boldare/openai-assistant
и этот репозиторий имеет лицензию MIT.