Add OpenAI-compatible LLM client service (v0.19.0)
CI / build + unit (pull_request) Successful in 1m14s

LlmService wraps the local OpenAI-compatible server (default
http://192.168.1.70:1111/v1, no auth) with native fetch only — no new
dependencies. listModels() -> data[].id; chat(messages, opts?) ->
choices[0].message.content (non-2xx throws with status + body snippet);
summarize(text) = chat() with a concise-summary system prompt.

Env: LLM_API_BASE / LLM_MODEL (qwen3.8-27b) / LLM_TIMEOUT_MS (60000,
AbortSignal.timeout). Plain feature module wired into app.module.ts;
docs synced (AGENTS.md, README env list).
This commit is contained in:
2026-09-25 18:07:21 +00:00
parent 55e59d4963
commit c5a2815c01
8 changed files with 200 additions and 2 deletions
+8 -1
View File
@@ -1,10 +1,17 @@
import { Module } from '@nestjs/common';
import { BatteryAlertModule } from './battery/battery.module.js';
import { CommandModule } from './commands/command.module.js';
import { LlmModule } from './llm/llm.module.js';
import { MeshModule } from './mesh/mesh.module.js';
import { WeatherModule } from './weather/weather.module.js';
@Module({
imports: [MeshModule, WeatherModule, BatteryAlertModule, CommandModule],
imports: [
MeshModule,
WeatherModule,
BatteryAlertModule,
CommandModule,
LlmModule,
],
})
export class AppModule {}