Быстрые примеры
Начните работу с SmartRAG за минуты.
Базовое использование
// 1. Загрузить документ
var document = await _documentService.UploadDocumentAsync(file);
// 2. Поиск документов
var results = await _searchService.SearchDocumentsAsync(query, 10);
// 3. Генерация RAG ответа с историей разговора
var response = await _searchService.GenerateRagAnswerAsync(question);
Пример контроллера
[ApiController]
[Route("api/[controller]")]
public class SearchController : ControllerBase
{
private readonly IDocumentSearchService _searchService;
[HttpPost("search")]
public async Task Search([FromBody] SearchRequest request)
{
var response = await _searchService.GenerateRagAnswerAsync(
request.Query, request.MaxResults);
return Ok(response);
}
}
public class SearchRequest
{
public string Query { get; set; } = string.Empty;
public int MaxResults { get; set; } = 5;
}</code></pre>
</div>
</div>
</div>
</section>
Расширенное использование
Расширенные примеры для производственного использования.
Пакетная обработка
// Загрузить несколько документов
var documents = await _documentService.UploadDocumentsAsync(files);
// Получить статистику хранилища
var stats = await _documentService.GetStorageStatisticsAsync();
// Управление документами
var allDocs = await _documentService.GetAllDocumentsAsync();
await _documentService.DeleteDocumentAsync(documentId);
Операции обслуживания
// Регенерация эмбеддингов
await _documentService.RegenerateAllEmbeddingsAsync();
// Очистка данных
await _documentService.ClearAllEmbeddingsAsync();
await _documentService.ClearAllDocumentsAsync();
Конфигурация
Настройте SmartRAG под ваши потребности.
Регистрация сервисов
// Program.cs
services.AddSmartRag(configuration, options =>
{
options.AIProvider = AIProvider.Anthropic;
options.StorageProvider = StorageProvider.Redis;
options.MaxChunkSize = 1000;
options.ChunkOverlap = 200;
});
Нужна помощь?
Если вам нужна помощь с примерами:
</div>
</div>