Itinai.com it company office background blured photography by 783785eb 8fa3 46e6 bc84 19f52afaa824 3

Создание многораундного агента глубоких исследований с использованием Gemini и DuckDuckGo API

Itinai.com it company office background blured photography by 783785eb 8fa3 46e6 bc84 19f52afaa824 3

Как создать многоуровневый агент глубоких исследований с использованием Gemini, DuckDuckGo API и автоматизированной отчетности

В этой статье мы рассмотрим, как построить модульную систему глубоких исследований, работающую непосредственно в Google Colab. Наша система будет использовать Gemini в качестве основного движка для анализа, интегрировать API DuckDuckGo для легких веб-поисков и организовывать многоуровневые запросы с обработкой дубликатов и задержек. Мы сосредоточимся на эффективности, ограничивая вызовы API, извлекая краткие фрагменты и используя структурированные запросы для извлечения ключевых точек, тем и инсайтов.

Создание исследовательской системы

Начнем с импорта необходимых библиотек Python, которые обеспечивают выполнение операций системы, обработку JSON, веб-запросы и работу с данными. Также мы интегрируем SDK генеративного ИИ от Google и утилиты, такие как кодирование URL, чтобы обеспечить бесперебойную работу нашей исследовательской системы.

import os
import json
import time
import requests
from typing import List, Dict, Any
from dataclasses import dataclass
import google.generativeai as genai
from urllib.parse import quote_plus
import re

Определение конфигурации исследования

Мы определим класс ResearchConfig для управления параметрами, такими как ключи API, лимиты источников и задержки. Затем создадим класс DeepResearchSystem, который интегрирует Gemini с поиском DuckDuckGo.

@dataclass
class ResearchConfig:
   gemini_api_key: str
   max_sources: int = 10
   max_content_length: int = 5000
   search_delay: float = 1.0

Реализация системы глубоких исследований

Класс DeepResearchSystem включает методы для веб-поиска, извлечения ключевых точек, анализа источников и генерации отчетов, что позволяет организовать многоуровневые исследования и получать структурированные инсайты в упрощенном рабочем процессе.

class DeepResearchSystem:
   def __init__(self, config: ResearchConfig):
       self.config = config
       genai.configure(api_key=config.gemini_api_key)
       self.model = genai.GenerativeModel('gemini-1.5-flash')

   def search_web(self, query: str, num_results: int = 5) -> List[Dict[str, str]]:
       ...

Проведение исследований

Метод conduct_research управляет всем процессом исследования, позволяя проводить несколько раундов запросов и анализа.

def conduct_research(self, query: str, depth: str = "standard") -> Dict[str, Any]:
   ...

Генерация отчетов

Наконец, мы генерируем комплексный отчет на основе анализа собранных источников в процессе исследования.

def generate_comprehensive_report(self, query: str, sources: List[Dict[str, str]],
                                   analysis: Dict[str, Any]) -> str:
   ...

Настройка исследовательской системы

Создадим функцию setup_research_system, которая упрощает инициализацию в Google Colab, оборачивая нашу конфигурацию в ResearchConfig и возвращая готовый к использованию экземпляр DeepResearchSystem с пользовательскими лимитами и задержками.

def setup_research_system(api_key: str) -> DeepResearchSystem:
   ...

Заключение

В заключение, мы продемонстрировали, как создать многоуровневый агент глубоких исследований с использованием Gemini и API DuckDuckGo. Эта система позволяет эффективно собирать данные, анализировать их и генерировать отчеты, предоставляя надежную основу для более сложных исследовательских приложений.

Для дальнейшего изучения не стесняйтесь заглянуть на нашу страницу GitHub для получения учебных материалов, кода и ноутбуков. Также подписывайтесь на нас в Twitter и присоединяйтесь к нашему сообществу для обсуждений и обновлений.

Новости в сфере искусственного интеллекта