Создавайте и развертывайте генеративные приложения (LLM и диффузоры) (чат-боты и API) за считанные секунды.
input()
и print()
или запишите файл на диск.Сосредоточьтесь на искусственном интеллекте (RAG, тонкая настройка, согласование, обучение) и пропустите инженерные задачи (разработка внешнего интерфейса, интеграция внутреннего интерфейса, развертывание, эксплуатация).
Создайте чат-бота и поделитесь им за считанные секунды следующим образом:
pip install hal9
hal9 create chatbot
hal9 deploy chatbot
Обратите внимание, что deploy
требуется переменная среды HAL9_TOKEN
с токеном API, который вы можете получить на сайте hal9.com/devs. Вы можете использовать этот токен для развертывания с локального компьютера, ноутбука или для автоматизации с GitHub.
HAL9_TOKEN=H9YOURTOKEN hal9 deploy chatbot --name my_first_chatbot
Вот и все, вы создали своего первого чат-бота!
Код внутри /chatbot/app.py
содержит чат-бот «Hello World», который читает приглашение пользователя и возвращает результат:
prompt = input ()
print ( f"Echo: { prompt } " )
Мы разработали этот пакет с учетом простоты, задача кода — считывать входные данные и записывать выходные данные, вот и все. Тем не менее, вы можете создавать чат-ботов, которые используют LLM, генерируют изображения или даже используют инструменты, подключающиеся к базам данных, или даже создают веб-сайты и игры!
По умолчанию hal9 create
значения по умолчанию для --template echo
, но вы можете выбрать другие значения следующим образом:
hal9 create chatbot-openai --template openai
hal9 create chatbot-groq --template groq
Шаблон предоставляет готовый к использованию код с конкретными технологиями и вариантами использования. Очень популярно использование шаблона OpenAI, похожего на ChatGPT, с --template openai
, сгенерированный код будет выглядеть следующим образом:
import hal9 as h9
from openai import OpenAI
messages = h9 . load ( "messages" , [])
prompt = h9 . input ( messages = messages )
completions = OpenAI (). chat . completions . create ( model = "gpt-4" , messages = messages , stream = True )
h9 . complete ( completions , messages = messages )
h9 . save ( "messages" , messages , hidden = True )
В разделе «Обучение» подробно объясняется, как работает этот код, а также приводится краткий обзор. Пакет hal9
содержит вспомогательные функции для упрощения вашего генеративного кода искусственного интеллекта. Вы можете вообще не использовать hal9
и использовать операторы input()
и print()
самостоятельно или даже подать в суд на такие инструменты, как langchain
. Функции h9.load()
и h9.save()
загружают и сохраняют данные во время сеансов чата, наша платформа по умолчанию не имеет состояния. Функция h9.input()
— это тонкая оболочка над input()
, которая также сохраняет введенные пользователем данные в messages
. Тогда h9.complete()
— это вспомогательная функция, помогающая проанализировать результаты завершения и сохранить результат в messages
. Вот и все!
Чтобы внести изменения в свой проект, откройте chatbot/
в своей IDE и измените chatbot/app.py
.
Затем вы можете запустить свой проект следующим образом:
hal9 run chatbot
Если вы настроили свой шаблон с помощью --template
обязательно установите правильный ключ, например, если вы используете шаблон OpenAI для Linux или macOS:
export OPENAI_KEY=YOUR_OPENAI_KEY.
Для Windows используйте:
set OPENAI_KEY=YOUR_OPENAI_KEY.
Дополнительную информацию о получении и использовании ключа OpenAI API см. в документации по ключу OpenAI API.
Затем вы можете запустить свое приложение локально с помощью:
hal9 run chatbot
Эта команда — всего лишь удобная оболочка для самостоятельного запуска кода с помощью чего-то вроде python app.py
Команда развертывания подготовит к развертыванию ваше генеративное приложение.
Например, вы можете подготовить развертывание как генеративное приложение (Hal9). У нас есть планы также обеспечить развертывание Docker, и сообщество открытого исходного кода может расширить это еще больше.
hal9 deploy chatbot --target hal9
Перед каждой командой стоит задача подготовить развертывание папки вашего проекта. Например, --target docker
должен создать файл Dockerfile
, который подготовит этот проект к запуску в облачных контейнерах.
Для личного использования --target hal9
поддерживает уровень бесплатного пользования на hal9.com
; корпоративную поддержку также можно развернуть с помощью --target hal9 --url hal9.yourcompany.com