본문으로 건너뛰기

YAML 설정 레퍼런스

Sinaptic® DROID+는 두 가지 유형의 YAML 설정 파일을 사용합니다.

  1. 메인 설정 (droid.yaml) — 글로벌 서버, LLM, 보안 및 로깅 설정
  2. 에이전트 설정 (configs/agents/*.yaml) — 에이전트별 모델, 페르소나, 도구 및 동작 설정

모든 설정 값은 ${ENV_VAR} 치환을 지원합니다. Sinaptic® DROID+는 시작 시 환경 변수를 해석합니다.


메인 설정 (droid.yaml)​

edition (에디션)​

값설명
community무료 에디션, 최대 에이전트 2개, RegExp 기반 보안만 제공 (기본값)
pro에이전트 무제한, 전체 SinapticAI 보안 계층 제공
enterprise멀티테넌시, 컴플라이언스, 고가용성(HA) 제공

server (서버)​

필드타입기본값설명
openai_portint8080OpenAI 호환 API 포트
management_portint8081관리 API 포트
cors_origins[]string["*"]허용된 CORS 오리진
api_keystring—인증을 위한 API 키 (${ENV_VAR} 지원)
demo_modeboolfalse데모 모드 활성화

llm​

기본 LLM 제공업체 설정입니다.

필드타입기본값설명
providerstringopenaiLLM 제공업체 이름 (openai, anthropic, gemini, grok, ollama, lm_studio, llama_cpp)
base_urlstringhttps://api.openai.com/v1API 베이스 URL
api_keystring${OPENAI_API_KEY}API 키 (${ENV_VAR} 지원)
default_modelstringgpt-4o-mini기본 모델 이름

anthropic​

필드타입기본값설명
base_urlstringhttps://api.anthropic.comAnthropic API 베이스 URL
api_keystring${ANTHROPIC_API_KEY}API 키

gemini​

필드타입기본값설명
base_urlstringhttps://generativelanguage.googleapis.com/v1betaGemini API 베이스 URL
api_keystring${GEMINI_API_KEY}API 키

grok​

필드타입기본값설명
base_urlstringhttps://api.x.ai/v1Grok (xAI) API 베이스 URL
api_keystring${GROK_API_KEY}API 키

ollama​

필드타입기본값설명
base_urlstringhttp://localhost:11434/v1Ollama API 베이스 URL

lm_studio​

필드타입기본값설명
base_urlstringhttp://localhost:1234/v1LM Studio API 베이스 URL

llama_cpp​

필드타입기본값설명
base_urlstringhttp://localhost:8080/v1llama.cpp 서버 베이스 URL

embedding (임베딩)​

필드타입기본값설명
modelstringtext-embedding-3-small임베딩 모델 이름
base_urlstring(llm.base_url 사용)임베딩 API 베이스 URL
api_keystring(llm.api_key 사용)임베딩 API 키

sinaptic​

SinapticAI 보안 계층 설정입니다.

필드타입기본값설명
enabledbooltrueSinapticAI 보안 스캐닝 활성화
modestringblock위협 감지 시 동작: block 또는 log
log_blockedbooltrue차단된 요청 로깅 여부

sinaptic.pii​

필드타입기본값설명
enabledbooltruePII(개인 식별 정보) 감지 활성화
strategystringmaskPII 처리 전략: mask(마스킹) 또는 block(차단)

mcp​

Model Context Protocol (MCP) 도구 서버 설정입니다.

mcp:
servers:
my-server:
command: "npx"
args: ["-y", "@my-org/mcp-server"]
env:
API_KEY: "${MY_API_KEY}"
필드타입설명
serversmap명명된 MCP 서버 정의

서버별 설정:

필드타입설명
commandstringMCP 서버를 실행할 명령
args[]string명령 인자
envmap[string]string서버 프로세스를 위한 환경 변수

logging (로깅)​

필드타입기본값설명
levelstringinfo로그 레벨 (debug, info, warn, error)
formatstringjson로그 형식 (json 또는 text)

audit (감사)​

필드타입기본값설명
enabledboolfalse감사 로그 활성화
log_pathstring./logs/audit감사 로그 파일 경로
retention_daysint30감사 로그 보관 일수

branding (브랜딩)​

필드타입기본값설명
show_badgebool(자동)"Powered by Sinaptic® DROID+" 배지 표시 여부. 자동: community 에디션은 true, pro/enterprise는 false

최상위 경로​

필드타입기본값설명
data_dirstring./data런타임 데이터 디렉토리 (임베딩, 상태 등)
agents_dirstring./configs/agents에이전트 YAML 설정이 포함된 디렉토리

에이전트 설정 (configs/agents/*.yaml)​

최상위 필드​

필드타입필수 여부기본값설명
namestring예(파일명)고유 에이전트 식별자
descriptionstring아니요—사람이 읽을 수 있는 설명
modelobject예—LLM 모델 설정
personalitystring예—에이전트를 위한 시스템 프롬프트
agent_typestring아니요plain처리 루프: plain 또는 react
execution_modestring아니요sequential도구 실행 방식: sequential 또는 parallel
chain_of_thoughtbool아니요falseChain-of-thought 추론 활성화
max_iterationsint아니요10ReAct 루프 최대 반복 횟수
tool_timeoutstring아니요30s도구 호출의 기본 타임아웃

model​

필드타입기본값설명
namestring—모델 이름 (예: gpt-4o, claude-sonnet-4-20250514)
base_urlstring(메인 설정에서 상속)LLM API 베이스 URL 오버라이드
api_keystring(메인 설정에서 상속)API 키 오버라이드
max_tokensint1024응답 최대 토큰 수
temperaturefloat0.7샘플링 온도 (0-2)

memory.short_term (단기 메모리)​

필드타입기본값설명
max_messagesint50슬라이딩 윈도우 방식의 대화 기록 크기

rag​

필드타입기본값설명
enabledboolfalseRAG(검색 증강 생성) 활성화
top_kint3검색할 청크 개수
min_scorefloat0.7최소 유사도 점수 임계값

도구 (tools)​

도구 설정 배열입니다.

필드타입필수 여부설명
namestring예도구 식별자
descriptionstring아니요도구 설명 (LLM에게 표시됨)
typestring예도구 유형: mcp, rest_api
urlstringrest_api엔드포인트 URL
methodstringrest_apiHTTP 메서드 (GET, POST, PUT, DELETE)
headersmaprest_apiHTTP 헤더
timeoutstringrest_api요청 타임아웃 (예: 10s)

pipeline (파이프라인)​

멀티 LLM 파이프라인 단계입니다(선택 사항). 정의된 경우 요청이 각 단계를 순차적으로 통과합니다.

필드타입필수 여부설명
namestring예단계 식별자
modelobject예이 단계를 위한 모델 설정
personalitystring예이 단계를 위한 시스템 프롬프트

spawns (스폰)​

에이전트 간 호출(A2A) 설정입니다.

필드타입기본값설명
max_spawnsint5요청당 최대 서브 에이전트 호출 횟수 (0 = 무제한)
max_tokens_per_spawnint4096스폰된 호출당 토큰 예산
max_depthint3최대 재귀 깊이
allowed_agents[]string[] (전체)스폰 가능한 에이전트 화이트리스트
spawn_timeout_secsint60스폰된 호출당 타임아웃(초)

rate_limit (요청 속도 제한)​

필드타입기본값설명
requests_per_minuteint0 (무제한)분당 최대 요청 횟수

sinaptic​

에이전트별 SinapticAI 설정 오버라이드입니다.

필드타입기본값설명
enabledbool(글로벌 설정 상속)글로벌 SinapticAI 활성화 플래그 오버라이드

전체 예시​

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: RAG 및 도구를 사용하는 고객 지원 에이전트

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

personality: |
당신은 유능한 고객 지원 에이전트입니다.
항상 정중하고 간결하며 정확하게 답변하세요.

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: 주문 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"]