Ga naar hoofdinhoud

YAML-configuratiereferentie

Sinaptic® DROID+ maakt gebruik van twee soorten YAML-configuratiebestanden:

  1. Hoofdconfiguratie (droid.yaml) — globale server-, LLM-, beveiligings- en logging-instellingen
  2. Agent-configuraties (configs/agents/*.yaml) — model, persoonlijkheid, tools en gedrag per agent

Alle configuratiewaarden ondersteunen de ${ENV_VAR} substitutie — Sinaptic® DROID+ resolvert omgevingsvariabelen bij het opstarten.


Hoofdconfiguratie (droid.yaml)

edition (editie)

WaardeBeschrijving
communityGratis editie, max 2 agenten, alleen RegExp-beveiliging (standaard)
proOnbeperkt aantal agenten, volledige SinapticAI-cascade
enterpriseMulti-tenancy, compliance, hoge beschikbaarheid (HA)

server (server)

VeldTypeStandaardBeschrijving
openai_portint8080Poort voor de OpenAI-compatibele API
management_portint8081Poort voor de Management API
cors_origins[]string["*"]Toegestane CORS-origins
api_keystringAPI-sleutel voor authenticatie (ondersteunt ${ENV_VAR})
demo_modeboolfalseDemo-modus inschakelen

llm

Primaire LLM-provider configuratie.

VeldTypeStandaardBeschrijving
providerstringopenaiLLM-provider naam (openai, anthropic, gemini, grok, ollama, lm_studio, llama_cpp)
base_urlstringhttps://api.openai.com/v1API base URL
api_keystring${OPENAI_API_KEY}API-sleutel (ondersteunt ${ENV_VAR})
default_modelstringgpt-4o-miniStandaard modelnaam

anthropic

VeldTypeStandaardBeschrijving
base_urlstringhttps://api.anthropic.comAnthropic API base URL
api_keystring${ANTHROPIC_API_KEY}API-sleutel

gemini

VeldTypeStandaardBeschrijving
base_urlstringhttps://generativelanguage.googleapis.com/v1betaGemini API base URL
api_keystring${GEMINI_API_KEY}API-sleutel

grok

VeldTypeStandaardBeschrijving
base_urlstringhttps://api.x.ai/v1Grok (xAI) API base URL
api_keystring${GROK_API_KEY}API-sleutel

ollama

VeldTypeStandaardBeschrijving
base_urlstringhttp://localhost:11434/v1Ollama API base URL

lm_studio

VeldTypeStandaardBeschrijving
base_urlstringhttp://localhost:1234/v1LM Studio API base URL

llama_cpp

VeldTypeStandaardBeschrijving
base_urlstringhttp://localhost:8080/v1llama.cpp server base URL

embedding

VeldTypeStandaardBeschrijving
modelstringtext-embedding-3-smallEmbedding modelnaam
base_urlstring(valt terug op llm.base_url)Embedding API base URL
api_keystring(valt terug op llm.api_key)Embedding API-sleutel

sinaptic

Configuratie van de SinapticAI-beveiligingslaag.

VeldTypeStandaardBeschrijving
enabledbooltrueSinapticAI beveiligingsscanning inschakelen
modestringblockActie bij dreigingsdetectie: block of log
log_blockedbooltrueGeblokkeerde verzoeken loggen

sinaptic.pii

VeldTypeStandaardBeschrijving
enabledbooltruePII-detectie inschakelen
strategystringmaskPII-afhandelingsstrategie: mask of block

mcp

Model Context Protocol (MCP) tool server configuratie.

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

Per server:

VeldTypeBeschrijving
commandstringCommando om de MCP-server te starten
args[]stringCommando-argumenten
envmap[string]stringOmgevingsvariabelen voor het serverproces

logging

VeldTypeStandaardBeschrijving
levelstringinfoLogniveau (debug, info, warn, error)
formatstringjsonLogformaat (json of text)

audit

VeldTypeStandaardBeschrijving
enabledboolfalseAudit-logging inschakelen
log_pathstring./logs/auditPad voor audit-logbestanden
retention_daysint30Aantal dagen om audit-logs te bewaren

branding

VeldTypeStandaardBeschrijving
show_badgebool(auto)"Powered by Sinaptic® DROID+" badge weergeven. Auto: true voor community, false voor pro/enterprise

Paden op het hoogste niveau

VeldTypeStandaardBeschrijving
data_dirstring./dataMap voor runtime gegevens (embeddings, status)
agents_dirstring./configs/agentsMap met agent YAML-configuraties

Agent-configuratie (configs/agents/*.yaml)

Velden op het hoogste niveau

VeldTypeVereistStandaardBeschrijving
namestringja(bestandsnaam)Unieke agent-identificatie
descriptionstringneeVoor mensen leesbare beschrijving
modelobjectjaLLM-modelconfiguratie
personalitystringjaSysteemprompt voor de agent
agent_typestringneeplainVerwerkingsloop: plain of react
execution_modestringneesequentialTool-uitvoering: sequential of parallel
chain_of_thoughtboolneefalseChain-of-thought redenering inschakelen
max_iterationsintnee10Max ReAct loop iteraties
tool_timeoutstringnee30sStandaard timeout voor tool-aanroepen

model

VeldTypeStandaardBeschrijving
namestringModelnaam (bijv. gpt-4o, claude-sonnet-4-20250514)
base_urlstring(uit hoofdconfiguratie)LLM API base URL overschrijven
api_keystring(uit hoofdconfiguratie)API-sleutel overschrijven
max_tokensint1024Maximum aantal response-tokens
temperaturefloat0.7Sampling-temperatuur (0-2)

memory.short_term (kortetermijngeheugen)

VeldTypeStandaardBeschrijving
max_messagesint50Grootte van het sliding-window voor de gespreksgeschiedenis

rag

VeldTypeStandaardBeschrijving
enabledboolfalseRetrieval-augmented generation inschakelen
top_kint3Aantal op te halen fragmenten
min_scorefloat0.7Minimale drempelwaarde voor gelijkenis-score

tools

Array van tool-configuraties.

VeldTypeVereistBeschrijving
namestringjaTool-identificatie
descriptionstringneeTool-beschrijving (getoond aan het LLM)
typestringjaTool-type: mcp, rest_api
urlstringrest_apiEindpunt URL
methodstringrest_apiHTTP-methode (GET, POST, PUT, DELETE)
headersmaprest_apiHTTP-headers
timeoutstringrest_apiVerzoek timeout (bijv. 10s)

pipeline

Multi-LLM pipeline stappen (optioneel). Indien gedefinieerd, gaat het verzoek opeenvolgend door elke stap.

VeldTypeVereistBeschrijving
namestringjaStap-identificatie
modelobjectjaModelconfiguratie voor deze stap
personalitystringjaSysteemprompt voor deze stap

spawns

Configuratie voor agent-naar-agent (A2A) aanroepen.

VeldTypeStandaardBeschrijving
max_spawnsint5Max sub-agent aanroepen per verzoek (0 = onbeperkt)
max_tokens_per_spawnint4096Token-budget per gespawnede aanroep
max_depthint3Maximale recursiediepte
allowed_agents[]string[] (alle)Whitelist van agenten die gespawnd kunnen worden
spawn_timeout_secsint60Timeout per gespawnede aanroep in seconden

rate_limit

VeldTypeStandaardBeschrijving
requests_per_minuteint0 (onbeperkt)Maximaal aantal verzoeken per minuut

sinaptic

SinapticAI-overschrijving per agent.

VeldTypeStandaardBeschrijving
enabledbool(overnemen van globaal)Globale SinapticAI enabled vlag overschrijven

Volledig voorbeeld

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: Klantenservice-agent met RAG en tools

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

personality: |
Je bent een behulpzame klantenservice-agent.
Wees altijd beleefd, beknopt en nauwkeurig.

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: Bestelstatus opzoeken via bestel-ID
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"]