Ax: фреймворк для разработки приложений с LLM на TypeScript

Ax — это фреймворк DSPy на TypeScript для построения приложений с использованием LLM. Он упрощает разработку, предоставляя единый программный интерфейс для работы с разными языками, включая Python, Java, C++, Go и Rust.

Этот проект подходит тем, кто хочет интегрировать LLM в свои приложения, без необходимости переписывать код под разные языки. Ax предоставляет типизированные генерации, развертывание через нативные API, а также поддержку агентов с расширенными возможностями управления памятью и выполнением. Удобно, что базовые функции уже доступны как библиотеки для других языков, что упрощает мультиплатформенную разработку.

Запустить Ax можно через npm с использованием команды npm install @ax-llm/ax. Учти, что проект активно развивается, и хотя документация довольно подробная, на текущий момент может не поддерживаться полная функциональность на всех платформах.

Ax — это проект, который предоставляет единый программный интерфейс для работы с крупными языковыми моделями (LLMs) на нескольких языках программирования, включая TypeScript, Python, Java, C++, Go и Rust. Основная цель Ax — упростить процесс разработки и интеграции с LLMs, обеспечивая при этом строгую типизацию и высокую производительность.

Что делает Ax

Ax ориентирован на создание структурированных генеративных алгоритмов с использованием различных сформулированных сигнатур, таких как строковый DSL (Domain Specific Language) и сборщики с явными типами. Проект включает в себя:

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

Установка и запуск

Установка Ax для разных языков программирования осуществляется через стандартные менеджеры пакетов. Например, для установки Ax в TypeScript достаточно выполнить команду:

npm install @ax-llm/ax

Для Python это выглядит так:

pip install axllm

Аналогично для других языков: Rust, Java, C++, Go. Полный список команд можно найти в README.

Использование и примеры

Ax предлагает обширные возможности для разработки. Например, с помощью Ax можно генерировать резюме из текстов, выполнять классификацию комментариев и работать с заданиями в виде графа. Вот как может выглядеть простой пример использования:


const classify = ax(
  'review:string -> sentiment:class "positive, negative, neutral"',
);
const { sentiment } = await classify.forward(llm, {
  review: "This product is amazing!",
});

Проект также поддерживает потоки, что позволяет работать с данными по мере их поступления, минимизируя задержки.

Ограничения

Ax предназначен для работы в рамках заданных языковых моделей и ограничен их возможностями. Например, поддержка некоторых функций, таких как аудио и видео, требует дополнительных установок и выполнения специфичных для каждой модели действий.

Также, работа с высоким объемом данных может влиять на производительность, поэтому важно учитывать требования к ресурсам для запуска более сложных операций и потоков.

Сообщество и поддержка

Ax активно поддерживается сообществом разработчиков. Есть возможность задавать вопросы и получать помощь на [Discord](https://discord.gg/DSHg3dU7dW) или следить за обновлениями проекта в Twitter.

Документация и примеры использования, включая руководство по началу работы, доступны на [официальной странице проекта GitHub](https://github.com/ax-llm/ax).

Открыть на GitHub: ax-llm/ax →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте