feat: initial commit
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
# Jedyne źródło prawdy o backendach LLM i modelach per rola.
|
||||
#
|
||||
# Kontrakt jest jeden: endpoint zgodny z API OpenAI pod CODEMOD_LLM_BASE_URL.
|
||||
# Backendy różnią się tym, jak ten endpoint powstaje - nie tym, co widzi silnik.
|
||||
#
|
||||
# `task llm:env` renderuje z tego pliku zmienne środowiskowe,
|
||||
# `task llm:up` uruchamia wskazany backend.
|
||||
|
||||
default_backend: auto # auto = wykrycie platformy (macOS -> vllm-metal, Linux+NVIDIA -> vllm-gpu)
|
||||
|
||||
backends:
|
||||
|
||||
vllm-gpu:
|
||||
description: vLLM w kontenerze, Linux z GPU NVIDIA. Ścieżka najbliższa produkcji na OpenShifcie.
|
||||
platforms: [linux]
|
||||
requires: [docker, nvidia-gpu]
|
||||
provider: vllm
|
||||
base_url: http://localhost:8000/v1
|
||||
api_key: not-required
|
||||
serve:
|
||||
model: Qwen/Qwen3-4B-Instruct-2507
|
||||
# --enable-auto-tool-choice + parser są konieczne: agenci wołają narzędzia,
|
||||
# bez tego vLLM zwróci opis wywołania w treści zamiast tool_calls.
|
||||
args:
|
||||
- --max-model-len=16384
|
||||
- --enable-auto-tool-choice
|
||||
- --tool-call-parser=hermes
|
||||
- --gpu-memory-utilization=0.90
|
||||
models:
|
||||
planner: Qwen/Qwen3-4B-Instruct-2507
|
||||
coder: Qwen/Qwen3-4B-Instruct-2507
|
||||
reviewer: Qwen/Qwen3-4B-Instruct-2507
|
||||
scribe: Qwen/Qwen3-4B-Instruct-2507
|
||||
|
||||
vllm-metal:
|
||||
description: >
|
||||
vLLM natywnie na Apple Silicon przez plugin vllm-project/vllm-metal (backend MLX).
|
||||
Docker na macOS nie ma dostępu do Metala, więc kontener nie jest tu opcją.
|
||||
platforms: [darwin]
|
||||
requires: [python3.12-arm64, xcode-cli]
|
||||
provider: vllm
|
||||
base_url: http://localhost:8000/v1
|
||||
api_key: not-required
|
||||
serve:
|
||||
model: mlx-community/Qwen3-4B-Instruct-2507-4bit
|
||||
args:
|
||||
- --max-model-len=16384
|
||||
- --enable-auto-tool-choice
|
||||
- --tool-call-parser=hermes
|
||||
models:
|
||||
planner: mlx-community/Qwen3-4B-Instruct-2507-4bit
|
||||
coder: mlx-community/Qwen3-4B-Instruct-2507-4bit
|
||||
reviewer: mlx-community/Qwen3-4B-Instruct-2507-4bit
|
||||
scribe: mlx-community/Qwen3-4B-Instruct-2507-4bit
|
||||
|
||||
ollama:
|
||||
description: >
|
||||
Wariant awaryjny na obie platformy. Nie jest vLLM, ale wystawia /v1 zgodne z OpenAI
|
||||
i wstaje jedną komendą. Na macOS instaluj natywnie (Metal) - w Dockerze liczy na CPU.
|
||||
platforms: [linux, darwin]
|
||||
requires: [ollama]
|
||||
provider: openai_like
|
||||
base_url: http://localhost:11434/v1
|
||||
api_key: ollama
|
||||
serve:
|
||||
model: qwen3:4b-instruct
|
||||
args: []
|
||||
models:
|
||||
planner: qwen3:4b-instruct
|
||||
coder: qwen3:4b-instruct
|
||||
reviewer: qwen3:4b-instruct
|
||||
scribe: qwen3:4b-instruct
|
||||
|
||||
mock:
|
||||
description: >
|
||||
Atrapa z llm/mock_server.py. Zero pobierania, zero GPU, deterministyczne odpowiedzi
|
||||
zestrojone z fixture'em acme-app. Do testów ścieżki agentowej w CI, nie do pracy.
|
||||
platforms: [linux, darwin, windows]
|
||||
requires: []
|
||||
provider: openai_like
|
||||
base_url: http://127.0.0.1:8077/v1
|
||||
api_key: mock
|
||||
serve:
|
||||
model: mock/agentic-codemod
|
||||
args: []
|
||||
models:
|
||||
planner: mock/agentic-codemod
|
||||
coder: mock/agentic-codemod
|
||||
reviewer: mock/agentic-codemod
|
||||
scribe: mock/agentic-codemod
|
||||
|
||||
# Rekomendacje przy dobieraniu większych modeli (rola -> czego wymaga):
|
||||
# coder - najważniejszy: stabilne tool-calling i trzymanie się formatu edycji
|
||||
# planner - rozumowanie o zakresie zmiany; zysk z większego modelu jest tu wyraźny
|
||||
# reviewer - może być ten sam co planner; osobny model bywa lepszy (inny punkt widzenia)
|
||||
# scribe - najmniejszy wystarczy, to redakcja tekstu
|
||||
Reference in New Issue
Block a user