graphiti/tests
supmo668 74a422369c feat: Add enhanced configuration system with multi-provider LLM support
This commit introduces a comprehensive configuration system that makes
Graphiti more flexible and easier to configure across different
providers and deployment environments.

## New Features

- **Unified Configuration**: New GraphitiConfig class with Pydantic validation
- **YAML Support**: Load configuration from .graphiti.yaml files
- **Multi-Provider Support**: Easy switching between OpenAI, Azure, Anthropic,
  Gemini, Groq, and LiteLLM
- **LiteLLM Integration**: Unified access to 100+ LLM providers
- **Factory Functions**: Automatic client creation from configuration
- **Full Backward Compatibility**: Existing code continues to work

## Configuration System

- graphiti_core/config/settings.py: Pydantic configuration classes
- graphiti_core/config/providers.py: Provider enumerations and defaults
- graphiti_core/config/factory.py: Factory functions for client creation

## LiteLLM Client

- graphiti_core/llm_client/litellm_client.py: New unified LLM client
- Support for Azure OpenAI, AWS Bedrock, Vertex AI, Ollama, vLLM, etc.
- Automatic structured output detection

## Documentation

- docs/CONFIGURATION.md: Comprehensive configuration guide
- examples/graphiti_config_example.yaml: Example configurations
- DOMAIN_AGNOSTIC_IMPROVEMENT_PLAN.md: Future improvement roadmap

## Tests

- tests/config/test_settings.py: 22 tests for configuration
- tests/config/test_factory.py: 12 tests for factories
- 33/34 tests passing (97%)

## Issues Addressed

- #1004: Azure OpenAI support
- #1006: Azure OpenAI reranker support
- #1007: vLLM/OpenAI-compatible provider stability
- #1074: Ollama embeddings support
- #995: Docker Azure OpenAI support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-30 23:47:38 -08:00
..
config feat: Add enhanced configuration system with multi-provider LLM support 2025-11-30 23:47:38 -08:00
cross_encoder Remove integration markers from database tests (#1000) 2025-10-12 10:16:34 -07:00
driver Remove integration markers from database tests (#1000) 2025-10-12 10:16:34 -07:00
embedder save edge update (#721) 2025-07-14 11:15:38 -04:00
evals add_episode() refactor (#421) 2025-04-30 12:08:52 -04:00
llm_client fix: replace deprecated gemini-2.5-flash-lite-preview with gemini-2.5-flash-lite (#1076) 2025-11-20 16:03:51 -08:00
utils Separate unit, database, and API integration tests (#997) 2025-10-12 09:07:24 -07:00
helpers_test.py Add support for Kuzu as the graph driver (#799) 2025-08-27 11:45:21 -04:00
test_edge_int.py Remove integration markers from database tests (#1000) 2025-10-12 10:16:34 -07:00
test_entity_exclusion_int.py Add support for Kuzu as the graph driver (#799) 2025-08-27 11:45:21 -04:00
test_graphiti_int.py Add support for Kuzu as the graph driver (#799) 2025-08-27 11:45:21 -04:00
test_graphiti_mock.py Enable FalkorDB fulltext search tests (#1050) 2025-11-05 10:32:10 -08:00
test_node_int.py Remove integration markers from database tests (#1000) 2025-10-12 10:16:34 -07:00
test_text_utils.py update summary character limit (#1073) 2025-11-18 17:16:02 -05:00