Справочник API
vue-llm
Композаблы
| Экспорт | Описание |
|---|---|
useChat(options) | Стриминговый многоходовый чат |
useCompletion(options) | Стриминговое одноразовое дополнение текста |
useObject(options) | Стриминг структурированного JSON |
usePrompt(template, variables) | Реактивный рендеринг промпта |
Chat UI (headless)
| Экспорт | Описание |
|---|---|
usePromptInput(chat, options?) | Отправка по Enter с учётом IME, авторастущий textarea, вложения из диалога выбора файлов, вставки и перетаскивания |
useAutoScroll(options?) | Держит список внизу во время стриминга и отпускает, когда пользователь прокручивает вверх |
Middleware
| Экспорт | Описание |
|---|---|
wrapProvider(provider, middlewares) | Применяет middleware к провайдеру |
loggingMiddleware(label?) | Логирование в консоль |
headerMiddleware(headers) | Дополнительные HTTP-заголовки |
retryMiddleware(options?) | Повторы с экспоненциальной задержкой |
rateLimitMiddleware(options) | Очередь запросов на клиенте |
isRetryableError(error) | Политика повторов по умолчанию |
Утилиты
| Экспорт | Описание |
|---|---|
createPrompt(template, options?) | Типизированный шаблон промпта |
createChatPrompt(messages, options?) | Шаблон из нескольких сообщений |
renderTemplate(template, variables) | Разовый рендеринг без типизации |
createWebStorage(options?) | Адаптер для localStorage/sessionStorage |
createMemoryStorage() | Адаптер в памяти |
fileToDataURL(blob) | Читает Blob как data URL |
convertFilesToParts(files) | Файлы → FilePart[] |
LLMAPIError | Класс HTTP-ошибки |
defineTool(tool) | Типизированный инструмент с необязательным execute |
parsePartialJSON(text) | Разбирает неполный JSON по ходу стриминга |
Типы
UIMessage, UIMessagePart, TextPart, ReasoningPart, ToolCallPart, FilePart, SourcePart, ToolDefinition, ChatTool, ToolCallState, ToolExecutionContext, ToolComponentProps, DeepPartial, ChatStatus, FinishReason, Usage, LLMProvider, ChatRequest, ChatMessage, ContentPart, ChatStreamResult, ChatStreamChunk, ChatResponse, Middleware, ChatHandler, RetryOptions, RateLimitOptions, ChatStorage, WebStorageOptions, FileInput, SendMessageInput, PromptTemplate, ChatPromptTemplate, ChatPromptMessage, PromptOptions, PromptInput, PromptValue, PromptVariables, PromptVariableNames, а также Use*Options / Use*Return каждого композабла.
vue-llm/providers
createOpenAI, createAnthropic, createGoogle, createOllama, createSSEProvider, createWebLLM, isWebGPUSupported.
vue-llm/server
createLLMHandler (с серверными инструментами), createProxyProvider, streamToSSE.
vue-llm/devtools
LLMDevtools: плагин для Vue DevTools (требует @vue/devtools-api).
vue-llm/style.css
Стили для компонентов.
vue-llm/nuxt
vue-llm/components
MessageParts, StreamMarkdown, renderMarkdown, renderInline, escapeHTML.