- Introduced CHUTES_API_TOKEN in .env.example files for configuration. - Updated README.md in quickstart example to include Chutes API setup. - Created quickstart_chutes.py example for demonstrating Chutes integration. - Added ChutesEmbedder and ChutesClient classes for embedding and LLM functionalities. - Updated LLM and embedder provider configurations to support Chutes. - Enhanced factories to include Chutes client and embedder. - Modified schema.py to define Chutes provider configuration. - Updated mcp_server configuration files to integrate Chutes API. - Added necessary dependencies in pyproject.toml for Chutes support.
121 lines
No EOL
4.2 KiB
YAML
121 lines
No EOL
4.2 KiB
YAML
# Graphiti MCP Server Configuration
|
|
# This file supports environment variable expansion using ${VAR_NAME} or ${VAR_NAME:default_value}
|
|
#
|
|
# IMPORTANT: Set SEMAPHORE_LIMIT environment variable to control episode processing concurrency
|
|
# Default: 10 (suitable for OpenAI Tier 3, mid-tier Anthropic)
|
|
# See README.md "Concurrency and LLM Provider 429 Rate Limit Errors" section for tuning guidance
|
|
|
|
server:
|
|
transport: "http" # Options: stdio, sse (deprecated), http
|
|
host: "0.0.0.0"
|
|
port: 8000
|
|
|
|
llm:
|
|
provider: "chutes" # Options: openai, azure_openai, anthropic, gemini, groq, chutes
|
|
model: "moonshotai/Kimi-K2-Instruct-0905"
|
|
max_tokens: 4096
|
|
|
|
providers:
|
|
openai:
|
|
api_key: ${OPENAI_API_KEY}
|
|
api_url: ${OPENAI_API_URL:https://api.openai.com/v1}
|
|
organization_id: ${OPENAI_ORGANIZATION_ID:}
|
|
|
|
azure_openai:
|
|
api_key: ${AZURE_OPENAI_API_KEY}
|
|
api_url: ${AZURE_OPENAI_ENDPOINT}
|
|
api_version: ${AZURE_OPENAI_API_VERSION:2024-10-21}
|
|
deployment_name: ${AZURE_OPENAI_DEPLOYMENT}
|
|
use_azure_ad: ${USE_AZURE_AD:false}
|
|
|
|
anthropic:
|
|
api_key: ${ANTHROPIC_API_KEY}
|
|
api_url: ${ANTHROPIC_API_URL:https://api.anthropic.com}
|
|
max_retries: 3
|
|
|
|
gemini:
|
|
api_key: ${GOOGLE_API_KEY}
|
|
project_id: ${GOOGLE_PROJECT_ID:}
|
|
location: ${GOOGLE_LOCATION:us-central1}
|
|
|
|
groq:
|
|
api_key: ${GROQ_API_KEY}
|
|
api_url: ${GROQ_API_URL:https://api.groq.com/openai/v1}
|
|
|
|
chutes:
|
|
api_key: ${CHUTES_API_KEY}
|
|
api_url: ${CHUTES_API_URL:https://llm.chutes.ai/v1}
|
|
embedding_url: ${CHUTES_EMBEDDING_URL:https://chutes-qwen-qwen3-embedding-8b.chutes.ai/v1}
|
|
|
|
embedder:
|
|
provider: "chutes" # Options: openai, azure_openai, gemini, voyage, chutes
|
|
model: "Qwen/Qwen2-57B-A14B-Instruct"
|
|
dimensions: 1536
|
|
|
|
providers:
|
|
openai:
|
|
api_key: ${OPENAI_API_KEY}
|
|
api_url: ${OPENAI_API_URL:https://api.openai.com/v1}
|
|
organization_id: ${OPENAI_ORGANIZATION_ID:}
|
|
|
|
azure_openai:
|
|
api_key: ${AZURE_OPENAI_API_KEY}
|
|
api_url: ${AZURE_OPENAI_EMBEDDINGS_ENDPOINT}
|
|
api_version: ${AZURE_OPENAI_API_VERSION:2024-10-21}
|
|
deployment_name: ${AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT}
|
|
use_azure_ad: ${USE_AZURE_AD:false}
|
|
|
|
gemini:
|
|
api_key: ${GOOGLE_API_KEY}
|
|
project_id: ${GOOGLE_PROJECT_ID:}
|
|
location: ${GOOGLE_LOCATION:us-central1}
|
|
|
|
voyage:
|
|
api_key: ${VOYAGE_API_KEY}
|
|
api_url: ${VOYAGE_API_URL:https://api.voyageai.com/v1}
|
|
model: "voyage-3"
|
|
|
|
chutes:
|
|
api_key: ${CHUTES_API_KEY}
|
|
api_url: ${CHUTES_API_URL:https://llm.chutes.ai/v1}
|
|
embedding_url: ${CHUTES_EMBEDDING_URL:https://chutes-qwen-qwen3-embedding-8b.chutes.ai/v1}
|
|
|
|
database:
|
|
provider: "neo4j" # Default: falkordb. Options: neo4j, falkordb
|
|
|
|
providers:
|
|
falkordb:
|
|
uri: ${FALKORDB_URI:redis://localhost:6379}
|
|
password: ${FALKORDB_PASSWORD:}
|
|
database: ${FALKORDB_DATABASE:default_db}
|
|
|
|
neo4j:
|
|
uri: ${NEO4J_URI:bolt://localhost:7687}
|
|
username: ${NEO4J_USER:neo4j}
|
|
password: ${NEO4J_PASSWORD}
|
|
database: ${NEO4J_DATABASE:neo4j}
|
|
use_parallel_runtime: ${USE_PARALLEL_RUNTIME:false}
|
|
|
|
graphiti:
|
|
group_id: ${GRAPHITI_GROUP_ID:main}
|
|
episode_id_prefix: ${EPISODE_ID_PREFIX:ep}
|
|
user_id: ${USER_ID:mcp_user}
|
|
entity_types:
|
|
- name: "Preference"
|
|
description: "User preferences, choices, opinions, or selections (PRIORITIZE over most other types except User/Assistant)"
|
|
- name: "Requirement"
|
|
description: "Specific needs, features, or functionality that must be fulfilled"
|
|
- name: "Procedure"
|
|
description: "Standard operating procedures and sequential instructions"
|
|
- name: "Location"
|
|
description: "Physical or virtual places where activities occur"
|
|
- name: "Event"
|
|
description: "Time-bound activities, occurrences, or experiences"
|
|
- name: "Organization"
|
|
description: "Companies, institutions, groups, or formal entities"
|
|
- name: "Document"
|
|
description: "Information content in various forms (books, articles, reports, etc.)"
|
|
- name: "Topic"
|
|
description: "Subject of conversation, interest, or knowledge domain (use as last resort)"
|
|
- name: "Object"
|
|
description: "Physical items, tools, devices, or possessions (use as last resort)" |