Projektowanie narzędzi dla modeli językowych i agentów AI: nagranie webinaru, kod źródłowy i kluczowe wnioski

Pierwszy webinar rozgrzewkowy przed AI_devs 4 za nami! Przygotowaliśmy dla Ciebie podsumowanie i zebraliśmy wszystkie materiały w pigułce.

📂 Materiały od Adama:

  • Serwer MCP udostępniający zestaw narzędzi dla AI do zarządzania zadaniami w Linear. Kod źródłowy prezentuje techniki projektowania narzędzi dla agentów AI oraz schematów do Function Calling, a także formatów odpowiedzi.
  • Zestawienie struktury API ze strukturą narzędzi Function Calling zoptymalizowanych pod agentów AI / LLM.
  • Zestaw głównych zasad i reguł, którymi kieruję się przy projektowaniu narzędzi dla LLM.

📄 Kluczowe wnioski

Natura modeli i orkiestracja

  • Model językowy w rzeczywistości jedynie potrafi mówić - potrzebuje egzekutora, który będzie słuchał tego mówienia i wykonywał działania.
  • Samo AI nie posiada mocy sprawczej, więc to Twój kod musi pełnić rolę egzekutora wykonującego akcje w tle.

Projektowanie interfejsów dla AI

  • Narzędzia dla modeli muszą być prostsze niż standardowe API - model nie jest w stanie pobrać i przetworzyć całej dokumentacji dotyczącej działania narzędzi.
  • W procesie projektowania dążymy do maksymalizowania sygnału przy jednoczesnym wycinaniu zbędnego szumu informacyjnego.
  • Zamiast zmuszać model do operowania na identyfikatorach, lepiej pozwolić mu korzystać z naturalnych nazw i mapować je w tle.
  • Każdy zbędny identyfikator czy pole w formacie JSON to niepotrzebny koszt i większe ryzyko, że model pomyli rekordy.

Bezpieczeństwo i stabilność produkcji

  • W przypadku akcji nieodwracalnych fundamentem jest stosowanie white lists oraz walidacji deterministycznej.
  • Zamiast dawać agentowi pełną autonomię, warto wdrożyć mechanizm human in the loop, na przykład generując drafty maili do ręcznego zatwierdzenia.
  • Kluczowa jest analiza odwracalności danej akcji, ponieważ błędny priorytet w systemie można łatwo naprawić, ale wysłany mail to już proces typu fire and forget.

Sygnał, szum i dekompozycja

  • Skuteczność agenta zależy od pracy wyłącznie na danych niezbędnych do wykonania konkretnego zadania.
  • Przekazywanie wszystkich dostępnych narzędzi do kontekstu naraz to błąd, który szybko doprowadzi do przepełnienia pamięci.
  • Stabilność złożonych systemów osiąga się nie przez wybór „najmądrzejszego” modelu, ale przez dekompozycję zadań na małe, izolowane kroki, z rozwiązaniem których poradzą sobie nawet tańsze modele.

Zobacz nagranie