llm-chat/module.yaml
flemming-it 05660a4e01
Some checks failed
CI / Linux x86_64 (Forgejo) (push) Failing after 2s
chore(module): schema_version 2 + explicit provider
Brings module.yaml in line with F∆I 0.12.0's capability naming
convention. The legacy schema_version 1 (with implicit provider)
still loads in 0.12.0 via the grace-period default, but this
bump makes the publisher identity explicit and unblocks
storage-layout migration via 'fai migrate'.

See fai/platform docs/reference/capability-namespaces.yaml +
docs/operations/migration-to-0.12.md.

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-28 11:48:25 +02:00

55 lines
1.7 KiB
YAML

schema_version: 2
provider: fai
name: llm-chat
version: 0.1.0
# Capability provided by this module.
provides:
- capability: llm.chat
version: 0.1.0
# Inputs the invoke function accepts.
inputs:
# The user-facing prompt text.
prompt: text
# Ollama-shaped /api/chat endpoint, e.g.
# "http://localhost:11434/api/chat".
endpoint: text
# Model identifier as registered with the endpoint, e.g.
# "qwen2.5:14b" or "llama3.1:8b".
model: text
# Optional bearer token for cloud-hosted endpoints. Empty
# string means no Authorization header is sent.
api_key: text
# Optional system prompt. Empty string omits the system
# message and lets the model use its built-in default.
system_prompt: text
# Outputs produced.
outputs:
# The assistant's plain-text reply.
response: text
# The endpoint the response was generated against. Used for
# audit correlation.
model_endpoint: text
# The model identifier as supplied to the LLM API.
model_name: text
# SHA-256 digest of the served Ollama model, when reachable.
# Empty for non-Ollama endpoints (OpenAI / Anthropic do not
# expose a digest API). Together with model_endpoint and
# model_name this answers the audit question "which exact
# model produced this response?"
model_digest: text
# Permissions required.
#
# The module makes outbound HTTP to the configured endpoint.
# Default declarations cover loopback (Ollama) and the common
# cloud providers. Operators with different endpoints fork
# module.yaml in Phase 0.5; operator-config-driven permission
# overrides arrive in Phase 1+.
permissions:
- "net: localhost"
- "net: 127.0.0.1"
- "net: api.openai.com"
- "net: api.anthropic.com"