langgraph-agent-toolkit 0.1.2__tar.gz → 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- langgraph_agent_toolkit-0.3.0/.coveragerc +6 -0
- langgraph_agent_toolkit-0.3.0/.env.example +115 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/PULL_REQUEST_TEMPLATE.md +2 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/workflows/release.yml +1 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/workflows/test.yml +2 -2
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.pre-commit-config.yaml +3 -3
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/CHANGELOG.md +25 -0
- langgraph_agent_toolkit-0.1.2/README.md → langgraph_agent_toolkit-0.3.0/PKG-INFO +221 -10
- langgraph_agent_toolkit-0.1.2/PKG-INFO → langgraph_agent_toolkit-0.3.0/README.md +126 -81
- langgraph_agent_toolkit-0.3.0/configs/clickhouse/.clickhouse.env.example +3 -0
- langgraph_agent_toolkit-0.3.0/configs/langfuse/.langfuse.env.example +59 -0
- langgraph_agent_toolkit-0.3.0/configs/litellm/.litellm.env.example +3 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/configs/litellm/config.example.yaml +13 -1
- langgraph_agent_toolkit-0.3.0/configs/minio/.minio.env.example +2 -0
- langgraph_agent_toolkit-0.3.0/configs/postgres/.postgres.env.example +3 -0
- langgraph_agent_toolkit-0.3.0/configs/redis/.redis.env.example +1 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/docker/app/Dockerfile +2 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/docker/service/Dockerfile +2 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/docker-compose.yaml +26 -85
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/agent_executor.py +68 -12
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/agent.py +17 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/chatbot/agent.py +17 -3
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/interrupt_agent/agent.py +19 -3
- langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/agents/blueprints/knowledge_base_agent/agent.py +199 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/react/agent.py +7 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/react_so/agent.py +7 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/supervisor_agent/agent.py +7 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/client/client.py +45 -20
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/memory/postgres.py +2 -1
- langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/core/models/factory.py +158 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/settings.py +69 -42
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/helper/constants.py +3 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/helper/utils.py +9 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/schema/__init__.py +0 -2
- langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/schema/models.py +13 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/schema/schema.py +19 -14
- langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/service/__init__.py +0 -0
- langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/service/exception_handlers.py +71 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/service/routes.py +3 -6
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/service/utils.py +20 -23
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/streamlit_app.py +0 -4
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/pyproject.toml +52 -10
- langgraph_agent_toolkit-0.3.0/scripts/postgres-init/create_databases.sql +9 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/agents/test_agent_executor.py +9 -9
- langgraph_agent_toolkit-0.3.0/tests/agents/test_service_streaming.py +52 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/app/conftest.py +0 -3
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/app/test_streamlit_app.py +11 -6
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/client/test_client.py +10 -9
- langgraph_agent_toolkit-0.3.0/tests/core/test_llm.py +48 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/core/test_settings.py +88 -59
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/integration/test_docker_e2e.py +2 -1
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/service/conftest.py +9 -3
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/service/test_auth.py +20 -17
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/service/test_service.py +9 -17
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/uv.lock +679 -25
- langgraph_agent_toolkit-0.1.2/.coveragerc +0 -5
- langgraph_agent_toolkit-0.1.2/.env.example +0 -57
- langgraph_agent_toolkit-0.1.2/configs/clickhouse/.clickhouse.env.example +0 -3
- langgraph_agent_toolkit-0.1.2/configs/litellm/.litellm.env.example +0 -3
- langgraph_agent_toolkit-0.1.2/configs/minio/.minio.env.example +0 -2
- langgraph_agent_toolkit-0.1.2/configs/postgres/.postgres.env.example +0 -3
- langgraph_agent_toolkit-0.1.2/configs/redis/.redis.env.example +0 -1
- langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/core/models/factory.py +0 -118
- langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/schema/models.py +0 -25
- langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/service/exception_handlers.py +0 -46
- langgraph_agent_toolkit-0.1.2/scripts/postgres-init/create_databases.sql +0 -32
- langgraph_agent_toolkit-0.1.2/tests/core/test_llm.py +0 -56
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.dockerignore +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/RELEASE_TEMPLATE/release-template.md +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/codecov.yml +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/dependabot.yml +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/scripts/tag_from_pyproject.sh +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.github/workflows/deploy.yml +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.gitignore +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/.project-root +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/CONTRIBUTING.md +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/LICENSE +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/Makefile +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/docs/media/agent_architecture.excalidraw +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/docs/media/agent_architecture.png +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/docs/media/agent_diagram.png +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph.json +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/agent.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/task.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/utils.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/chatbot/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/command_agent/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/command_agent/agent.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/blueprints/interrupt_agent/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/agents/blueprints/react → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/agents/blueprints/knowledge_base_agent}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/agents/blueprints/react_so → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/agents/blueprints/react}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/agents/blueprints/supervisor_agent → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/agents/blueprints/react_so}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/agents/components → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/agents/blueprints/supervisor_agent}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/core/memory → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/agents/components}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/components/creators/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/components/creators/create_react_agent.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/components/tools.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/agents/components/utils.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/client/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/core/prompts → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/core/memory}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/memory/base.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/memory/factory.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/memory/sqlite.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/memory/types.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/models/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/models/chat_openai.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/models/fake.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/base.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/empty.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/factory.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/langfuse.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/langsmith.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/observability/types.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/helper → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/core/prompts}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/core/prompts/chat_prompt_template.py +0 -0
- {langgraph_agent_toolkit-0.1.2/langgraph_agent_toolkit/service → langgraph_agent_toolkit-0.3.0/langgraph_agent_toolkit/helper}/__init__.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/helper/logging.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/helper/types.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/run_agent.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/run_client.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/run_service.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/schema/task_data.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/service/factory.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/service/handler.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/service/middleware.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/langgraph_agent_toolkit/service/types.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/scripts/python/01-invoke-proxy.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/scripts/python/02-test-local-pm.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/scripts/python/03-test-langfuse-pm.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/scripts/python/04-test-langsmith-pm.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/scripts/python/05-test-prompt-types.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/scripts/python/06-test-custom-chat-prompt-template.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/client/conftest.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/conftest.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/core/test_memory.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/core/test_observability.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/core/test_prompts.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/service/test_factory.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/service/test_service_e2e.py +0 -0
- {langgraph_agent_toolkit-0.1.2 → langgraph_agent_toolkit-0.3.0}/tests/service/test_utils.py +0 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# Web server configuration
|
|
2
|
+
HOST=0.0.0.0
|
|
3
|
+
PORT=8080
|
|
4
|
+
|
|
5
|
+
# Application mode. If the value is "dev", it will enable uvicorn reload
|
|
6
|
+
ENV_MODE=development
|
|
7
|
+
|
|
8
|
+
# Authentication secret, HTTP bearer token header is required if set
|
|
9
|
+
AUTH_SECRET=
|
|
10
|
+
|
|
11
|
+
# Observability backend
|
|
12
|
+
# OBSERVABILITY_BACKEND=langfuse
|
|
13
|
+
|
|
14
|
+
# Langfuse configuration
|
|
15
|
+
# LANGFUSE_SECRET_KEY=
|
|
16
|
+
# LANGFUSE_PUBLIC_KEY=
|
|
17
|
+
# LANGFUSE_HOST=http://langfuse-web:3000
|
|
18
|
+
|
|
19
|
+
# Langsmith configuration
|
|
20
|
+
# LANGSMITH_TRACING=true
|
|
21
|
+
# LANGSMITH_API_KEY=
|
|
22
|
+
# LANGSMITH_PROJECT=default
|
|
23
|
+
# LANGSMITH_ENDPOINT=https://api.smith.langchain.com
|
|
24
|
+
|
|
25
|
+
# Database type.
|
|
26
|
+
# If the value is "postgres", then it will require Postgresql related environment variables.
|
|
27
|
+
# If the value is "sqlite", then you can configure optional file path via SQLITE_DB_PATH
|
|
28
|
+
MEMORY_BACKEND=postgres
|
|
29
|
+
|
|
30
|
+
# If DATABASE_TYPE=sqlite (Optional)
|
|
31
|
+
SQLITE_DB_PATH=
|
|
32
|
+
|
|
33
|
+
# If DATABASE_TYPE=postgres
|
|
34
|
+
POSTGRES_USER=
|
|
35
|
+
POSTGRES_PASSWORD=
|
|
36
|
+
POSTGRES_HOST=
|
|
37
|
+
POSTGRES_PORT=
|
|
38
|
+
POSTGRES_DB=agents
|
|
39
|
+
# Connection pool settings (optional)
|
|
40
|
+
POSTGRES_POOL_SIZE=10
|
|
41
|
+
POSTGRES_MIN_SIZE=3
|
|
42
|
+
POSTGRES_MAX_IDLE=5
|
|
43
|
+
|
|
44
|
+
# Agent URL: used in Streamlit app - if not set, defaults to http://{HOST}:{PORT}
|
|
45
|
+
# AGENT_URL=http://0.0.0.0:8080
|
|
46
|
+
|
|
47
|
+
# Use a fake model for testing
|
|
48
|
+
USE_FAKE_MODEL=false
|
|
49
|
+
|
|
50
|
+
# OpenAI Settings
|
|
51
|
+
OPENAI_API_KEY=
|
|
52
|
+
OPENAI_API_BASE_URL=
|
|
53
|
+
OPENAI_API_VERSION=
|
|
54
|
+
OPENAI_MODEL_NAME=
|
|
55
|
+
|
|
56
|
+
# Azure OpenAI Settings
|
|
57
|
+
AZURE_OPENAI_API_KEY=
|
|
58
|
+
AZURE_OPENAI_ENDPOINT=
|
|
59
|
+
AZURE_OPENAI_API_VERSION=
|
|
60
|
+
AZURE_OPENAI_MODEL_NAME=
|
|
61
|
+
AZURE_OPENAI_DEPLOYMENT_NAME=
|
|
62
|
+
|
|
63
|
+
# Anthropic Settings
|
|
64
|
+
ANTHROPIC_API_KEY=
|
|
65
|
+
ANTHROPIC_MODEL_NAME=
|
|
66
|
+
|
|
67
|
+
# Google VertexAI Settings
|
|
68
|
+
GOOGLE_VERTEXAI_MODEL_NAME=
|
|
69
|
+
GOOGLE_VERTEXAI_API_KEY=
|
|
70
|
+
|
|
71
|
+
# Google GenAI Settings
|
|
72
|
+
GOOGLE_GENAI_MODEL_NAME=
|
|
73
|
+
GOOGLE_GENAI_API_KEY=
|
|
74
|
+
|
|
75
|
+
# Bedrock Settings
|
|
76
|
+
AWS_BEDROCK_MODEL_NAME=
|
|
77
|
+
|
|
78
|
+
# DeepSeek Settings
|
|
79
|
+
DEEPSEEK_MODEL_NAME=
|
|
80
|
+
DEEPSEEK_API_KEY=
|
|
81
|
+
|
|
82
|
+
# Ollama Settings
|
|
83
|
+
OLLAMA_MODEL_NAME=
|
|
84
|
+
OLLAMA_BASE_URL=
|
|
85
|
+
|
|
86
|
+
# Model configurations - use multiline format with line continuation for readability
|
|
87
|
+
# It can be useful if you want to use different models for different agents or use different models from different providers.
|
|
88
|
+
MODEL_CONFIGS={\
|
|
89
|
+
"gpt4o": {\
|
|
90
|
+
"provider": "azure_openai",\
|
|
91
|
+
"name": "gpt-4o",\
|
|
92
|
+
"api_key": "azure-key-123",\
|
|
93
|
+
"endpoint": "https://your-resource.openai.azure.com/",\
|
|
94
|
+
"api_version": "2023-05-15",\
|
|
95
|
+
"deployment": "gpt4o-deployment",\
|
|
96
|
+
"temperature": 0.7\
|
|
97
|
+
},\
|
|
98
|
+
"gpt4o-mini": {\
|
|
99
|
+
"provider": "azure_openai",\
|
|
100
|
+
"name": "gpt-4o-mini",\
|
|
101
|
+
"api_key": "azure-key-123",\
|
|
102
|
+
"endpoint": "https://your-resource.openai.azure.com/",\
|
|
103
|
+
"api_version": "2023-05-15",\
|
|
104
|
+
"deployment": "gpt4o-mini-deployment"\
|
|
105
|
+
},\
|
|
106
|
+
"gemini": {\
|
|
107
|
+
"provider": "google_genai",\
|
|
108
|
+
"name": "gemini-pro",\
|
|
109
|
+
"api_key": "google-key-123",\
|
|
110
|
+
"temperature": 0.7\
|
|
111
|
+
}\
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
# Amazon Bedrock Knowledge Base ID
|
|
115
|
+
AWS_KB_ID=
|
|
@@ -34,7 +34,7 @@ jobs:
|
|
|
34
34
|
with:
|
|
35
35
|
python-version: ${{ matrix.python-version }}
|
|
36
36
|
- name: Install uv
|
|
37
|
-
uses: astral-sh/setup-uv@
|
|
37
|
+
uses: astral-sh/setup-uv@v6
|
|
38
38
|
with:
|
|
39
39
|
version: "0.6.12"
|
|
40
40
|
- name: Install dependencies with uv
|
|
@@ -135,7 +135,7 @@ jobs:
|
|
|
135
135
|
with:
|
|
136
136
|
python-version-file: "pyproject.toml"
|
|
137
137
|
- name: Install uv
|
|
138
|
-
uses: astral-sh/setup-uv@
|
|
138
|
+
uses: astral-sh/setup-uv@v6
|
|
139
139
|
with:
|
|
140
140
|
version: "0.6.12"
|
|
141
141
|
- name: Install ONLY CLIENT dependencies with uv
|
|
@@ -27,11 +27,11 @@ repos:
|
|
|
27
27
|
- repo: https://github.com/nbQA-dev/nbQA
|
|
28
28
|
rev: 1.9.1
|
|
29
29
|
hooks:
|
|
30
|
-
- id: nbqa-ruff-format
|
|
31
|
-
additional_dependencies: [ruff==0.11.4]
|
|
32
30
|
- id: nbqa-ruff
|
|
33
31
|
additional_dependencies: [ruff==0.11.4]
|
|
34
|
-
args: ["--fix", "--show-
|
|
32
|
+
args: ["--fix", "--show-files"]
|
|
33
|
+
- id: nbqa-ruff-format
|
|
34
|
+
additional_dependencies: [ruff==0.11.4]
|
|
35
35
|
|
|
36
36
|
- repo: https://github.com/kynan/nbstripout
|
|
37
37
|
rev: 0.8.1
|
|
@@ -6,6 +6,31 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
6
6
|
and this project adheres to
|
|
7
7
|
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
8
8
|
|
|
9
|
+
## [0.3.0]
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- `MODEL_CONFIGS` to unify LLM env variables
|
|
14
|
+
- New blueprint with AWS KB
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- Streaming messages handling
|
|
19
|
+
- Refactored code structure for better maintainability
|
|
20
|
+
- Optional dependencies
|
|
21
|
+
- API exception handling
|
|
22
|
+
|
|
23
|
+
## [0.2.0]
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
|
|
27
|
+
- Refactored code structure for better maintainability
|
|
28
|
+
- Refactored Model factory
|
|
29
|
+
|
|
30
|
+
### Removed
|
|
31
|
+
|
|
32
|
+
- Removed AllModels and added environment variables for different providers
|
|
33
|
+
|
|
9
34
|
## [0.1.2]
|
|
10
35
|
|
|
11
36
|
### Added
|
|
@@ -1,3 +1,98 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: langgraph-agent-toolkit
|
|
3
|
+
Version: 0.3.0
|
|
4
|
+
Summary: Full toolkit for running an AI agent service built with LangGraph, FastAPI and Streamlit
|
|
5
|
+
Project-URL: repository, https://github.com/kryvokhyzha/langgraph-agent-toolkit
|
|
6
|
+
Project-URL: PyPI, https://pypi.org/project/langgraph-agent-toolkit
|
|
7
|
+
Author-email: Roman Kryvokhyzha <kriwohizha@gmail.com>
|
|
8
|
+
License-Expression: MIT
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Keywords: agents,blueprint,fastapi,langgraph,litellm,streamlit
|
|
11
|
+
Classifier: Development Status :: 4 - Beta
|
|
12
|
+
Classifier: Framework :: FastAPI
|
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
+
Classifier: Topic :: Scientific/Engineering
|
|
19
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
20
|
+
Classifier: Topic :: Software Development
|
|
21
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
22
|
+
Requires-Python: <3.14,>=3.11
|
|
23
|
+
Requires-Dist: duckduckgo-search>=7.3.0
|
|
24
|
+
Requires-Dist: fastapi~=0.115.5
|
|
25
|
+
Requires-Dist: grpcio>=1.68.0
|
|
26
|
+
Requires-Dist: httpx~=0.28.1
|
|
27
|
+
Requires-Dist: jinja2~=3.1.6
|
|
28
|
+
Requires-Dist: jiter~=0.9.0
|
|
29
|
+
Requires-Dist: joblib~=1.4.2
|
|
30
|
+
Requires-Dist: langchain-community~=0.3.21
|
|
31
|
+
Requires-Dist: langchain-core~=0.3.52
|
|
32
|
+
Requires-Dist: langfuse~=2.60.3
|
|
33
|
+
Requires-Dist: langgraph-checkpoint-postgres~=2.0.19
|
|
34
|
+
Requires-Dist: langgraph-checkpoint-sqlite~=2.0.6
|
|
35
|
+
Requires-Dist: langgraph-cli[inmem]~=0.2.3
|
|
36
|
+
Requires-Dist: langgraph-supervisor~=0.0.16
|
|
37
|
+
Requires-Dist: langgraph~=0.3.30
|
|
38
|
+
Requires-Dist: langsmith~=0.3.31
|
|
39
|
+
Requires-Dist: loguru~=0.7.3
|
|
40
|
+
Requires-Dist: multidict>6.3.2
|
|
41
|
+
Requires-Dist: numpy~=1.26.4; python_version <= '3.12'
|
|
42
|
+
Requires-Dist: numpy~=2.2.3; python_version >= '3.13'
|
|
43
|
+
Requires-Dist: pandas~=2.2.3
|
|
44
|
+
Requires-Dist: psycopg[binary,pool]~=3.2.4
|
|
45
|
+
Requires-Dist: pyarrow>=19.0.1
|
|
46
|
+
Requires-Dist: pydantic-settings~=2.9.1
|
|
47
|
+
Requires-Dist: pydantic~=2.11.1
|
|
48
|
+
Requires-Dist: pyowm~=3.3.0
|
|
49
|
+
Requires-Dist: python-dotenv~=1.1.0
|
|
50
|
+
Requires-Dist: rootutils>=1.0.7
|
|
51
|
+
Requires-Dist: setuptools>=75.6.0
|
|
52
|
+
Requires-Dist: streamlit~=1.44.1
|
|
53
|
+
Requires-Dist: uvicorn~=0.34.0
|
|
54
|
+
Requires-Dist: watchdog~=6.0.0
|
|
55
|
+
Provides-Extra: all-backends
|
|
56
|
+
Requires-Dist: azure-functions~=1.23.0; extra == 'all-backends'
|
|
57
|
+
Requires-Dist: gunicorn~=23.0.0; extra == 'all-backends'
|
|
58
|
+
Requires-Dist: mangum~=0.19.0; extra == 'all-backends'
|
|
59
|
+
Requires-Dist: uvicorn~=0.34.2; extra == 'all-backends'
|
|
60
|
+
Provides-Extra: all-llms
|
|
61
|
+
Requires-Dist: langchain-anthropic~=0.3.12; extra == 'all-llms'
|
|
62
|
+
Requires-Dist: langchain-aws~=0.2.22; extra == 'all-llms'
|
|
63
|
+
Requires-Dist: langchain-deepseek~=0.1.3; extra == 'all-llms'
|
|
64
|
+
Requires-Dist: langchain-google-genai~=2.1.4; extra == 'all-llms'
|
|
65
|
+
Requires-Dist: langchain-google-vertexai~=2.0.21; extra == 'all-llms'
|
|
66
|
+
Requires-Dist: langchain-groq~=0.3.2; extra == 'all-llms'
|
|
67
|
+
Requires-Dist: langchain-ollama~=0.3.2; extra == 'all-llms'
|
|
68
|
+
Requires-Dist: langchain-openai~=0.3.12; extra == 'all-llms'
|
|
69
|
+
Provides-Extra: anthropic
|
|
70
|
+
Requires-Dist: langchain-anthropic~=0.3.12; extra == 'anthropic'
|
|
71
|
+
Provides-Extra: aws
|
|
72
|
+
Requires-Dist: langchain-aws~=0.2.22; extra == 'aws'
|
|
73
|
+
Provides-Extra: aws-backend
|
|
74
|
+
Requires-Dist: mangum~=0.19.0; extra == 'aws-backend'
|
|
75
|
+
Provides-Extra: azure-backend
|
|
76
|
+
Requires-Dist: azure-functions~=1.23.0; extra == 'azure-backend'
|
|
77
|
+
Provides-Extra: deepseek
|
|
78
|
+
Requires-Dist: langchain-deepseek~=0.1.3; extra == 'deepseek'
|
|
79
|
+
Provides-Extra: google-genai
|
|
80
|
+
Requires-Dist: langchain-google-genai~=2.1.4; extra == 'google-genai'
|
|
81
|
+
Provides-Extra: google-vertexai
|
|
82
|
+
Requires-Dist: langchain-google-vertexai~=2.0.21; extra == 'google-vertexai'
|
|
83
|
+
Provides-Extra: groq
|
|
84
|
+
Requires-Dist: langchain-groq~=0.3.2; extra == 'groq'
|
|
85
|
+
Provides-Extra: gunicorn-backend
|
|
86
|
+
Requires-Dist: gunicorn~=23.0.0; extra == 'gunicorn-backend'
|
|
87
|
+
Requires-Dist: uvicorn[standard]~=0.34.2; extra == 'gunicorn-backend'
|
|
88
|
+
Provides-Extra: ollama
|
|
89
|
+
Requires-Dist: langchain-ollama~=0.3.2; extra == 'ollama'
|
|
90
|
+
Provides-Extra: openai
|
|
91
|
+
Requires-Dist: langchain-openai~=0.3.12; extra == 'openai'
|
|
92
|
+
Provides-Extra: uvicorn-backend
|
|
93
|
+
Requires-Dist: uvicorn~=0.34.2; extra == 'uvicorn-backend'
|
|
94
|
+
Description-Content-Type: text/markdown
|
|
95
|
+
|
|
1
96
|
# 🧰 Langgraph Agent Toolkit
|
|
2
97
|
|
|
3
98
|
[](https://github.com/kryvokhyzha/langgraph-agent-toolkit/actions/workflows/test.yml)
|
|
@@ -28,6 +123,27 @@ Features include:
|
|
|
28
123
|
support
|
|
29
124
|
- Complete template for building and deploying your own LangGraph-based agents
|
|
30
125
|
|
|
126
|
+
## 📑 Contents
|
|
127
|
+
|
|
128
|
+
- [Introduction](#-introduction)
|
|
129
|
+
- [Quickstart](#-quickstart)
|
|
130
|
+
- [Installation Options](#-installation-options)
|
|
131
|
+
- [Architecture](#architecture)
|
|
132
|
+
- [Key Features](#-key-features)
|
|
133
|
+
- [Environment Setup](#environment-setup)
|
|
134
|
+
- [Creating Your `.env` File](#-creating-your-env-file)
|
|
135
|
+
- [LiteLLM Configuration](#-litellm-configuration)
|
|
136
|
+
- [Project Structure](#-project-structure)
|
|
137
|
+
- [Setup and Usage](#setup-and-usage)
|
|
138
|
+
- [Building Your Own Agent](#-building-your-own-agent)
|
|
139
|
+
- [Docker Setup](#-docker-setup)
|
|
140
|
+
- [Using the AgentClient](#-using-the-agentclient)
|
|
141
|
+
- [Development with LangGraph Studio](#-development-with-langgraph-studio)
|
|
142
|
+
- [Local Development Without Docker](#-local-development-without-docker)
|
|
143
|
+
- [Useful Resources](#-useful-resources)
|
|
144
|
+
- [Development and Contributing](#-development-and-contributing)
|
|
145
|
+
- [License](#-license)
|
|
146
|
+
|
|
31
147
|
## 🚀 Quickstart
|
|
32
148
|
|
|
33
149
|
1. Create a `.env` file based on [`.env.example`](./.env.example)
|
|
@@ -54,15 +170,41 @@ Features include:
|
|
|
54
170
|
pip install langgraph-agent-toolkit
|
|
55
171
|
```
|
|
56
172
|
|
|
173
|
+
ℹ️ You can check available extras in
|
|
174
|
+
[Installation Options](#-installation-options) section or directly in
|
|
175
|
+
[pyproject.toml](pyproject.toml) file.
|
|
176
|
+
|
|
57
177
|
4. **Option 3: Run with Docker**
|
|
58
178
|
|
|
59
179
|
```sh
|
|
60
180
|
docker compose watch
|
|
61
181
|
```
|
|
62
182
|
|
|
183
|
+
## 📦 Installation Options
|
|
184
|
+
|
|
185
|
+
The toolkit supports multiple installation options using "extras" to include
|
|
186
|
+
just the dependencies you need:
|
|
187
|
+
|
|
188
|
+
### Available Extras
|
|
189
|
+
|
|
190
|
+
```sh
|
|
191
|
+
# LLM Provider Extras
|
|
192
|
+
pip install "langgraph-agent-toolkit[openai,uvicorn-backend]" # OpenAI and Uvicorn backend
|
|
193
|
+
pip install "langgraph-agent-toolkit[anthropic,aws-backend]" # Anthropic and AWS Lambda backend
|
|
194
|
+
|
|
195
|
+
# Also available: google-vertexai, aws, ollama, groq, deepseek
|
|
196
|
+
pip install "langgraph-agent-toolkit[all-llms,ll-backends]" # All LLM providers and all backends
|
|
197
|
+
|
|
198
|
+
# Client-Only Installation
|
|
199
|
+
pip install "langgraph-agent-toolkit[client]" # Just the client and Streamlit app
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
<a name="architecture"></a>
|
|
203
|
+
|
|
63
204
|
## 🏗️ Architecture
|
|
64
205
|
|
|
65
|
-
<img src="docs/media/agent_architecture.png" width="800">
|
|
206
|
+
<!-- <img src="docs/media/agent_architecture.png" width="800"> -->
|
|
207
|
+
<img src="https://github.com/kryvokhyzha/langgraph-agent-toolkit/blob/main/docs/media/agent_architecture.png?raw=true" width="800">
|
|
66
208
|
|
|
67
209
|
## ✨ Key Features
|
|
68
210
|
|
|
@@ -97,6 +239,8 @@ Features include:
|
|
|
97
239
|
- Prompt management system
|
|
98
240
|
- LiteLLM proxy integration
|
|
99
241
|
|
|
242
|
+
<a name="environment-setup"></a>
|
|
243
|
+
|
|
100
244
|
## ⚙️ Environment Setup
|
|
101
245
|
|
|
102
246
|
### 📝 Creating Your `.env` File
|
|
@@ -112,12 +256,69 @@ Features include:
|
|
|
112
256
|
**🔑 LLM API Configuration**
|
|
113
257
|
|
|
114
258
|
```env
|
|
115
|
-
#
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
259
|
+
# OpenAI Settings
|
|
260
|
+
OPENAI_API_KEY=sk-xxxxxxxxxxxxx
|
|
261
|
+
OPENAI_API_BASE_URL=http://litellm:4000/v1 # Can be OpenAI API or LiteLLM proxy
|
|
262
|
+
OPENAI_API_VERSION=2025-01-01
|
|
263
|
+
OPENAI_MODEL_NAME=gpt-4o-mini
|
|
264
|
+
|
|
265
|
+
# Azure OpenAI Settings (Optional)
|
|
266
|
+
AZURE_OPENAI_API_KEY=
|
|
267
|
+
AZURE_OPENAI_ENDPOINT=
|
|
268
|
+
AZURE_OPENAI_API_VERSION=
|
|
269
|
+
AZURE_OPENAI_MODEL_NAME=
|
|
270
|
+
AZURE_OPENAI_DEPLOYMENT_NAME=
|
|
271
|
+
|
|
272
|
+
# Anthropic Settings (Optional)
|
|
273
|
+
ANTHROPIC_API_KEY=
|
|
274
|
+
ANTHROPIC_MODEL_NAME=
|
|
275
|
+
|
|
276
|
+
# Other provider settings are also available:
|
|
277
|
+
# - Google VertexAI
|
|
278
|
+
# - Google GenAI
|
|
279
|
+
# - AWS Bedrock
|
|
280
|
+
# - DeepSeek
|
|
281
|
+
# - Ollama
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
**🔀 Multi-Provider Model Configuration**
|
|
285
|
+
|
|
286
|
+
```env
|
|
287
|
+
# Configure multiple models from different providers in a single environment variable
|
|
288
|
+
MODEL_CONFIGS={\
|
|
289
|
+
"gpt4o": {\
|
|
290
|
+
"provider": "azure_openai",\
|
|
291
|
+
"name": "gpt-4o",\
|
|
292
|
+
"api_key": "azure-key-123",\
|
|
293
|
+
"endpoint": "https://your-resource.openai.azure.com/",\
|
|
294
|
+
"api_version": "2023-05-15",\
|
|
295
|
+
"deployment": "gpt4o-deployment",\
|
|
296
|
+
"temperature": 0.7\
|
|
297
|
+
},\
|
|
298
|
+
"gpt4o-mini": {\
|
|
299
|
+
"provider": "azure_openai",\
|
|
300
|
+
"name": "gpt-4o-mini",\
|
|
301
|
+
"api_key": "azure-key-123",\
|
|
302
|
+
"endpoint": "https://your-resource.openai.azure.com/",\
|
|
303
|
+
"api_version": "2023-05-15",\
|
|
304
|
+
"deployment": "gpt4o-mini-deployment"\
|
|
305
|
+
},\
|
|
306
|
+
"gemini": {\
|
|
307
|
+
"provider": "google_genai",\
|
|
308
|
+
"name": "gemini-pro",\
|
|
309
|
+
"api_key": "google-key-123",\
|
|
310
|
+
"temperature": 0.7\
|
|
311
|
+
}\
|
|
312
|
+
}
|
|
119
313
|
```
|
|
120
314
|
|
|
315
|
+
This configuration allows you to:
|
|
316
|
+
|
|
317
|
+
- Define multiple models with different providers in one place
|
|
318
|
+
- Reference them by logical names in your application
|
|
319
|
+
- Set provider-specific parameters for each model
|
|
320
|
+
- Switch between models without changing code
|
|
321
|
+
|
|
121
322
|
**🗄️ Database Configuration**
|
|
122
323
|
|
|
123
324
|
```env
|
|
@@ -193,13 +394,20 @@ Features include:
|
|
|
193
394
|
redis_password: os.environ/REDIS_AUTH
|
|
194
395
|
```
|
|
195
396
|
|
|
196
|
-
3. Setup
|
|
397
|
+
3. Setup service environment files:
|
|
398
|
+
|
|
399
|
+
Each service has its own environment file:
|
|
197
400
|
|
|
198
401
|
```sh
|
|
199
402
|
cp configs/litellm/.litellm.env.example configs/litellm/.litellm.env
|
|
403
|
+
cp configs/redis/.redis.env.example configs/redis/.redis.env
|
|
404
|
+
cp configs/postgres/.postgres.env.example configs/postgres/.postgres.env
|
|
405
|
+
cp configs/minio/.minio.env.example configs/minio/.minio.env
|
|
406
|
+
cp configs/clickhouse/.clickhouse.env.example configs/clickhouse/.clickhouse.env
|
|
407
|
+
cp configs/langfuse/.langfuse.env.example configs/langfuse/.langfuse.env
|
|
200
408
|
```
|
|
201
409
|
|
|
202
|
-
|
|
410
|
+
For example, edit LiteLLM environment:
|
|
203
411
|
|
|
204
412
|
```env
|
|
205
413
|
LITELLM_MASTER_KEY=sk-your-master-key # Create a strong key here
|
|
@@ -208,7 +416,8 @@ Features include:
|
|
|
208
416
|
STORE_MODEL_IN_DB=True
|
|
209
417
|
```
|
|
210
418
|
|
|
211
|
-
>
|
|
419
|
+
> [!NOTE]
|
|
420
|
+
> LiteLLM relies on Redis for request caching and rate limiting.
|
|
212
421
|
|
|
213
422
|
## 📂 Project Structure
|
|
214
423
|
|
|
@@ -224,6 +433,8 @@ The repository contains:
|
|
|
224
433
|
- `docker/`: Docker configurations
|
|
225
434
|
- `tests/`: Test suite
|
|
226
435
|
|
|
436
|
+
<a name="setup-and-usage"></a>
|
|
437
|
+
|
|
227
438
|
## 🛠️ Setup and Usage
|
|
228
439
|
|
|
229
440
|
1. Clone the repository:
|
|
@@ -248,7 +459,7 @@ To customize the agent:
|
|
|
248
459
|
|
|
249
460
|
### 🐳 Docker Setup
|
|
250
461
|
|
|
251
|
-
The `docker-compose.yaml` defines these services:
|
|
462
|
+
The `docker-compose.yaml` defines these services with enhanced security:
|
|
252
463
|
|
|
253
464
|
- `backend-agent-service`: FastAPI service
|
|
254
465
|
- `frontend-streamlit-app`: Streamlit chat interface
|
|
@@ -276,7 +487,7 @@ enables live reloading:
|
|
|
276
487
|
- 🔌 Agent API: `http://0.0.0.0:8080`
|
|
277
488
|
- 📚 API docs: `http://0.0.0.0:8080/docs`
|
|
278
489
|
- 📊 Langfuse dashboard: `http://0.0.0.0:3000`
|
|
279
|
-
- 🤖 LiteLLM API: `http://0.0.0.0:4000`
|
|
490
|
+
- 🤖 LiteLLM API: `http://0.0.0.0:4000` (accessible from any host)
|
|
280
491
|
|
|
281
492
|
4. Stop services:
|
|
282
493
|
|