Кроссплатформенный AI-клиент для чата, который подключает LLM, например OpenAI, Claude, Ollama и DeepSeek, к MCP-серверам.
ahyatt/llm
Библиотека на Emacs Lisp, которая предоставляет elisp-коду единый интерфейс к множеству LLM-провайдеров, включая OpenAI, Claude, Gemini и локальную Ollama.
- Звёзды
- 394
- Форки
- 44
- Открытые issues
- 10
- Последний коммит
- позавчера
Что это?
Пакет llm позволяет приложениям Emacs обращаться к большим языковым моделям через единый слой абстракции, а пользователи могут сами выбирать провайдера — платный облачный API или локально запущенную модель. Провайдеров создают с помощью конструкторов, например make-llm-openai, make-llm-claude, make-llm-gemini и make-llm-ollama, а клиентский код взаимодействует с универсальными функциями, которые работают одинаково для всех провайдеров.
Библиотека поддерживает синхронный и асинхронный чат, потоковую передачу ответов, мультимодальный ввод, например изображения, вызов инструментов, при котором LLM запускает elisp-функции с выбранными ею аргументами, а также эмбеддинги для семантического поиска. Кроме того, в ней есть средства для построения промптов, генерации ответов по JSON Schema, подсчёта токенов и принятия решений. Если провайдер не поддерживает какую-либо возможность, библиотека выдаёт сигнал not-implemented; перед её использованием клиент может проверить llm-capabilities.
Библиотека предназначена для авторов пакетов Emacs, которые хотят, чтобы их инструменты работали с любой моделью. Её используют такие пакеты, как ellama, magit-gptcommit и ekg.
Ключевые возможности
- 01Единый API для OpenAI, Claude, Gemini, Ollama, DeepSeek и других провайдеров
- 02Синхронные и асинхронные ответы в чате, а также потоковая передача ответов
- 03Вызов инструментов: LLM может запускать elisp-функции с заданными ею аргументами
- 04Ввод изображений и других медиа в чат
- 05Текстовые эмбеддинги для семантического поиска по сходству
- 06Ответы, ограниченные схемой JSON
Сценарии использования
- Добавление в пакет Emacs функций AI-чата или преобразования текста без привязки пользователей к одному поставщику
- Запуск бесплатной локальной модели через Ollama или llama.cpp с использованием того же кода
- Генерация сообщений коммитов или сводок прямо в рабочих процессах Emacs
- Построение семантического поиска по заметкам с помощью эмбеддингов
Быстрый старт
- 1
Установите пакет llm из MELPA
- 2
Подключите модуль провайдера с помощью require и настройте провайдера, например OpenAI, указав свой ключ
(require 'llm-openai) (make-llm-openai :key my-openai-key)
Что важно знать
- Для платных облачных провайдеров, таких как OpenAI, Claude и Gemini, требуется API-ключ. Также можно использовать локально запущенный сервер, например Ollama.
- У некоторых провайдеров доступны не все функции. Например, GPT4All и Azure OpenAI не всегда поддерживают эмбеддинги и использование инструментов.
В подборках
Темы
Частые вопросы
- Что такое llm?
- Библиотека на Emacs Lisp, которая предоставляет elisp-коду единый интерфейс к множеству LLM-провайдеров, включая OpenAI, Claude, Gemini и локальную Ollama. Пакет llm позволяет приложениям Emacs обращаться к большим языковым моделям через единый слой абстракции, а пользователи могут сами выбирать провайдера — платный облачный API или локально запущенную модель. Провайдеров создают с помощью конструкторов, например make-llm-openai, make-llm-claude, make-llm-gemini и make-llm-ollama, а клиентский код взаимодействует с универсальными функциями, которые работают одинаково для всех провайдеров.
- llm можно использовать бесплатно? Какая у него лицензия?
- llm распространяется с открытым исходным кодом под лицензией GPL-3.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- llm всё ещё поддерживается?
- Активно поддерживается. Последний коммит в llm — 5 нояб. 2026 г..
- Для чего можно использовать llm?
- Добавление в пакет Emacs функций AI-чата или преобразования текста без привязки пользователей к одному поставщику Запуск бесплатной локальной модели через Ollama или llama.cpp с использованием того же кода Генерация сообщений коммитов или сводок прямо в рабочих процессах Emacs Построение семантического поиска по заметкам с помощью эмбеддингов
- Как установить llm?
- Установите пакет llm из MELPA Подключите модуль провайдера с помощью require и настройте провайдера, например OpenAI, указав свой ключ: (require 'llm-openai) (make-llm-openai :key my-openai-key)
- Где скачать llm?
- Исходный код и инструкции по установке — на GitHub: https://github.com/ahyatt/llm
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
CLI-инструмент и библиотека Python для работы с промптами и чатами на удалённых и локально установленных больших языковых моделях.
Подборка примеров Java-приложений, демонстрирующих, как создавать функции на базе LLM и генеративного ИИ с помощью Spring AI и Spring Boot.
Простой и расширяемый LLM-клиент для Emacs: общайтесь с разными моделями и через разные бэкенды из любого буфера.
Плагин для Zotero, который позволяет общаться с одним или несколькими PDF и искать по всей библиотеке с помощью облачных LLM или локальных моделей.
Пакет для Emacs, который позволяет работать с локальными и облачными LLM в чате, редактировать текст, решать задачи с кодом и запускать циклы агента, не выходя из редактора.