diff --git a/DEPENDENCY_SLIM.md b/DEPENDENCY_SLIM.md deleted file mode 100644 index d2a25ba..0000000 --- a/DEPENDENCY_SLIM.md +++ /dev/null @@ -1,72 +0,0 @@ -# Dependency Slimming: pydantic-ai → pydantic-ai-slim - -**Date**: 2025-12-13 -**Version**: Post v1.2.0 - -## Change - -Switched from `pydantic-ai` to `pydantic-ai-slim[openai]` to reduce container image size. - -### Before -``` -pydantic-ai>=1.27,<1.28 -``` - -This installs SDKs for ALL LLM providers: -- anthropic -- boto3 + botocore (AWS Bedrock) -- cohere -- google-genai + google-auth -- groq -- huggingface-hub - -Total packages: ~158 - -### After -``` -pydantic-ai-slim[openai]>=1.27,<1.28 -``` - -Only installs the OpenAI-compatible SDK. Ollama works through this interface. - -Expected packages: ~80-90 (significant reduction) - -## Why This Works - -Tatlock uses Ollama exclusively, which implements the OpenAI-compatible API. The code uses: -```python -from pydantic_ai.models.openai import OpenAIChatModel -from pydantic_ai.providers.ollama import OllamaProvider - -model = OpenAIChatModel( - model_name=config.OLLAMA_DEFAULT_MODEL, - provider=OllamaProvider(base_url=f"{config.OLLAMA_HOST}/v1") -) -``` - -This pattern only requires the `openai` extra, not the full pydantic-ai package. - -## Rollback Instructions - -If this change breaks things: - -1. Revert requirements.txt: -```diff -- pydantic-ai-slim[openai]>=1.27,<1.28 -+ pydantic-ai>=1.27,<1.28 -``` - -2. Reinstall dependencies: -```bash -pip install -r requirements.txt -``` - -3. Delete this file once confirmed stable. - -## Testing Checklist - -- [ ] Unit tests pass -- [ ] Integration tests pass (with Ollama running) -- [ ] Wakeup script e2e test passes -- [ ] Container builds successfully -- [ ] Container runs correctly