Добавлена интеграция с Qdrant для поиска по векторам

This commit is contained in:
2026-04-14 16:05:32 +03:00
parent b5fe2623b3
commit 4f78606b2c
10 changed files with 471 additions and 9 deletions

View File

@@ -18,16 +18,17 @@
┌─────────────────────────────────────────────────────────┐
│ Services Layer (IToolModule) │
│ ┌──────────┐ ┌───────────────┐ ┌────────────────────┐
│ │JiraTools │ │ConfluenceTools│ │KubernetesTools │
│ └──────────┘ └───────────────┘ └────────────────────┘
│ ┌──────────┐ ┌───────────────┐ ┌────────────────────┐ ┌─────┐
│ │JiraTools │ │ConfluenceTools│ │KubernetesTools │ │Qdrant│
│ └──────────┘ └───────────────┘ └────────────────────┘ └─────┘
│ └────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ External API Layer │
│ ┌──────────┐ ┌───────────────┐ ┌────────────────────┐
│ │ Jira API │ │Confluence API │ │ K8s API │ │
│ └──────────┘ └───────────────┘ └────────────────────┘ │
│ ┌──────────┐ ┌───────────────┐ ┌────────────────────┐ ┌────┐
│ │ Jira API │ │Confluence API │ │ K8s API │ │Qdr│
│ └──────────┘ └───────────────┘ └────────────────────┘ └───┘
└─────────────────────────────────────────────────────────┘
```
@@ -289,4 +290,33 @@ Console.WriteLine
---
*Файл описывает систему архитектуры, ключевые компоненты и потоки данных. Обновлять при введении новых архитектурных решений.*
### Qdrant Client Provider Pattern
**File**: `LazyBear.MCP/Services/Qdrant/QdrantClientProvider.cs`
```csharp
public class QdrantClientProvider
{
private readonly IConfiguration _config;
public QdrantClient GetClient()
{
// Конфиг из appsettings.json
var url = _config["Qdrant:Url"];
var apiKey = _config["Qdrant:ApiKey"] ?? string.Empty;
return new QdrantClient(url, apiKey);
}
}
```
**Fallback порядок**:
1. Explicit URL из конфига
2. Environment variable QDRANT_URL
3. Localhost default
**Ответственность**: Создание клиентов Qdrant с поддержкой API ключа (опционально)
---
*Файл описывает систему архитектуры, ключевые компоненты и потоки данных. Обновлять при введении новых архитектурных решений.*