Zum Hauptinhalt springen

YAML-Konfigurationsreferenz

Sinaptic® DROID+ verwendet zwei Arten von YAML-Konfigurationsdateien:

  1. Hauptkonfiguration (droid.yaml) — globale Server-, LLM-, Sicherheits- und Logging-Einstellungen
  2. Agenten-Konfigurationen (configs/agents/*.yaml) — modellspezifische Einstellungen, Persönlichkeit, Tools und Verhalten pro Agent

Alle Konfigurationswerte unterstützen die ${ENV_VAR}-Substitution — Sinaptic® DROID+ löst Umgebungsvariablen beim Start auf.


Hauptkonfiguration (droid.yaml)

edition (Edition)

WertBeschreibung
communityKostenlose Edition, max. 2 Agenten, nur RegExp-Sicherheit (Standard)
proUnbegrenzte Agenten, volle SinapticAI-Kaskade
enterpriseMulti-Tenancy, Compliance, Hochverfügbarkeit (HA)

server (Server)

FeldTypStandardBeschreibung
openai_portint8080Port für die OpenAI-kompatible API
management_portint8081Port für die Management-API
cors_origins[]string["*"]Erlaubte CORS-Ursprünge
api_keystringAPI-Key für die Authentifizierung (unterstützt ${ENV_VAR})
demo_modeboolfalseDemo-Modus aktivieren

llm

Konfiguration des primären LLM-Anbieters.

FeldTypStandardBeschreibung
providerstringopenaiName des LLM-Anbieters (openai, anthropic, gemini, grok, ollama, lm_studio, llama_cpp)
base_urlstringhttps://api.openai.com/v1API-Basis-URL
api_keystring${OPENAI_API_KEY}API-Key (unterstützt ${ENV_VAR})
default_modelstringgpt-4o-miniName des Standardmodells

anthropic

FeldTypStandardBeschreibung
base_urlstringhttps://api.anthropic.comAnthropic API-Basis-URL
api_keystring${ANTHROPIC_API_KEY}API-Key

gemini

FeldTypStandardBeschreibung
base_urlstringhttps://generativelanguage.googleapis.com/v1betaGemini API-Basis-URL
api_keystring${GEMINI_API_KEY}API-Key

grok

FeldTypStandardBeschreibung
base_urlstringhttps://api.x.ai/v1Grok (xAI) API-Basis-URL
api_keystring${GROK_API_KEY}API-Key

ollama

FeldTypStandardBeschreibung
base_urlstringhttp://localhost:11434/v1Ollama API-Basis-URL

lm_studio

FeldTypStandardBeschreibung
base_urlstringhttp://localhost:1234/v1LM Studio API-Basis-URL

llama_cpp

FeldTypStandardBeschreibung
base_urlstringhttp://localhost:8080/v1llama.cpp Server-Basis-URL

embedding

FeldTypStandardBeschreibung
modelstringtext-embedding-3-smallName des Embedding-Modells
base_urlstring(fällt auf llm.base_url zurück)Embedding API-Basis-URL
api_keystring(fällt auf llm.api_key zurück)Embedding API-Key

sinaptic

Konfiguration der SinapticAI-Sicherheitsschicht.

FeldTypStandardBeschreibung
enabledbooltrueSinapticAI-Sicherheitsscan aktivieren
modestringblockAktion bei Bedrohungserkennung: block oder log
log_blockedbooltrueBlockierte Anfragen protokollieren

sinaptic.pii

FeldTypStandardBeschreibung
enabledbooltruePII-Erkennung aktivieren
strategystringmaskStrategie für PII: mask (maskieren) oder block (blockieren)

mcp

Konfiguration des Tool-Servers für das Model Context Protocol (MCP).

mcp:
servers:
my-server:
command: "npx"
args: ["-y", "@my-org/mcp-server"]
env:
API_KEY: "${MY_API_KEY}"
FeldTypBeschreibung
serversmapBenannte MCP-Serverdefinitionen

Pro Server:

FeldTypBeschreibung
commandstringBefehl zum Starten des MCP-Servers
args[]stringBefehlsargumente
envmap[string]stringUmgebungsvariablen für den Serverprozess

logging

FeldTypStandardBeschreibung
levelstringinfoLog-Level (debug, info, warn, error)
formatstringjsonLog-Format (json oder text)

audit

FeldTypStandardBeschreibung
enabledboolfalseAudit-Logging aktivieren
log_pathstring./logs/auditPfad für Audit-Logdateien
retention_daysint30Aufbewahrungsdauer für Audit-Logs in Tagen

branding

FeldTypStandardBeschreibung
show_badgebool(auto)"Powered by Sinaptic® DROID+" Badge anzeigen. Auto: true für Community, false für Pro/Enterprise

Top-Level-Pfade

FeldTypStandardBeschreibung
data_dirstring./dataVerzeichnis für Laufzeitdaten (Embeddings, Status)
agents_dirstring./configs/agentsVerzeichnis mit den Agenten-YAML-Konfigurationen

Agenten-Konfiguration (configs/agents/*.yaml)

Top-Level-Felder

FeldTypErforderlichStandardBeschreibung
namestringJa(Dateiname)Eindeutige Agenten-ID
descriptionstringNeinMenschenlesbare Beschreibung
modelobjectJaLLM-Modellkonfiguration
personalitystringJaSystem-Prompt für den Agenten
agent_typestringNeinplainVerarbeitungsschleife: plain oder react
execution_modestringNeinsequentialTool-Ausführung: sequential oder parallel
chain_of_thoughtboolNeinfalseChain-of-Thought-Reasoning aktivieren
max_iterationsintNein10Maximale Iterationen der ReAct-Schleife
tool_timeoutstringNein30sStandard-Timeout für Tool-Aufrufe

model

FeldTypStandardBeschreibung
namestringModellname (z. B. gpt-4o, claude-sonnet-4-20250514)
base_urlstring(aus Hauptkonf.)LLM API-Basis-URL überschreiben
api_keystring(aus Hauptkonf.)API-Key überschreiben
max_tokensint1024Maximale Anzahl der Antwort-Token
temperaturefloat0.7Sampling-Temperatur (0-2)

memory.short_term (Kurzzeitgedächtnis)

FeldTypStandardBeschreibung
max_messagesint50Größe des gleitenden Fensters für den Konversationsverlauf

rag

FeldTypStandardBeschreibung
enabledboolfalseRetrieval-Augmented Generation aktivieren
top_kint3Anzahl der abzurufenden Chunks
min_scorefloat0.7Schwellenwert für die Ähnlichkeitsbewertung

tools

Array von Tool-Konfigurationen.

FeldTypErforderlichBeschreibung
namestringJaTool-ID
descriptionstringNeinTool-Beschreibung (wird dem LLM angezeigt)
typestringJaTool-Typ: mcp, rest_api
urlstringrest_apiEndpunkt-URL
methodstringrest_apiHTTP-Methode (GET, POST, PUT, DELETE)
headersmaprest_apiHTTP-Header
timeoutstringrest_apiAnfrage-Timeout (z. B. 10s)

pipeline

Multi-LLM Pipeline-Schritte (optional). Wenn definiert, durchläuft die Anfrage jeden Schritt nacheinander.

FeldTypErforderlichBeschreibung
namestringJaSchritt-ID
modelobjectJaModellkonfiguration für diesen Schritt
personalitystringJaSystem-Prompt für diesen Schritt

spawns

Konfiguration für Agent-to-Agent (A2A) Aufrufe.

FeldTypStandardBeschreibung
max_spawnsint5Max. Sub-Agent-Aufrufe pro Anfrage (0 = unbegrenzt)
max_tokens_per_spawnint4096Token-Budget pro gespawntem Aufruf
max_depthint3Maximale Rekursionstiefe
allowed_agents[]string[] (alle)Whitelist der erlaubten Agenten für Spawns
spawn_timeout_secsint60Timeout pro gespawntem Aufruf in Sekunden

rate_limit (Rate-Limit)

FeldTypStandardBeschreibung
requests_per_minuteint0 (unbegrenzt)Maximale Anfragen pro Minute

sinaptic

SinapticAI-Überschreibung pro Agent.

FeldTypStandardBeschreibung
enabledbool(global erben)Globalen SinapticAI-Status überschreiben

Vollständiges Beispiel

droid.yaml

edition: community

server:
openai_port: 8080
management_port: 8081
cors_origins: ["*"]

llm:
provider: openai
base_url: https://api.openai.com/v1
api_key: ${OPENAI_API_KEY}
default_model: gpt-4o-mini

anthropic:
api_key: ${ANTHROPIC_API_KEY}

embedding:
model: text-embedding-3-small

sinaptic:
enabled: true
mode: block
pii:
enabled: true
strategy: mask
log_blocked: true

logging:
level: info
format: json

audit:
enabled: false
log_path: ./logs/audit
retention_days: 30

data_dir: ./data
agents_dir: ./configs/agents

configs/agents/support-bot.yaml

name: support-bot
description: Kundensupport-Agent mit RAG und Tools

model:
name: gpt-4o
max_tokens: 2048
temperature: 0.5

personality: |
Du bist ein hilfreicher Kundensupport-Agent.
Sei immer höflich, präzise und genau.

agent_type: react
execution_mode: parallel
chain_of_thought: true
max_iterations: 5
tool_timeout: 15s

memory:
short_term:
max_messages: 100

rag:
enabled: true
top_k: 5
min_score: 0.6

tools:
- name: lookup-order
type: rest_api
description: Bestellstatus anhand der Bestell-ID abfragen
url: https://api.example.com/orders/${order_id}
method: GET
headers:
Authorization: "Bearer ${INTERNAL_API_KEY}"
timeout: 10s

rate_limit:
requests_per_minute: 60

spawns:
max_spawns: 3
max_depth: 2
allowed_agents: ["billing-agent", "shipping-agent"]