\n\n\n\n Meine Philosophie des Starter-Kits: Mehr als nur leere Ordner - AgntKit \n

Meine Philosophie des Starter-Kits: Mehr als nur leere Ordner

📖 12 min read2,211 wordsUpdated Mar 29, 2026

Einverstanden, Freunde, Riley Fox hier, zurück auf agntkit.net. Heute werden wir direkt in etwas eintauchen, das mich in letzter Zeit mehr als gewöhnlich beschäftigt: die Kunst und die Wissenschaft des Starter Kits. Nicht irgendein Starter Kit, versteht sich, sondern dasjenige, das Sie wirklich startet, anstatt Ihnen einfach einen Haufen Teile zu geben, die Sie zusammenbauen müssen.

Ich bin schon lange in diesem Bereich tätig, um mich daran zu erinnern, dass ein „Starter Kit“ für ein neues Projekt einst eine ZIP-Datei mit einem Dutzend leerer Ordner und einer README war, die sagte: „Viel Glück!“ Zum Glück haben wir seitdem Fortschritte gemacht. Aber selbst jetzt, mit all den Open-Source-Projekten und den großartigen Frameworks, die es gibt, gibt es immer noch ein immenses Spektrum an Qualität, wenn es um den Start geht.

Der spezifische Aspekt, den ich heute ansprechen möchte, ist das „Smart Agent Starter Kit.“ Warum intelligente Agenten? Weil, seien wir ehrlich, wenn Sie agntkit.net lesen, Sie wahrscheinlich gerade dabei sind, einen zu bauen, darüber nachdenken, einen zu bauen oder versuchen, Ihre bestehenden Agenten intelligenter zu machen. Und der Raum, um diese Dinge zu bauen, entwickelt sich so schnell, dass es wie der Versuch erscheint, aus einem Feuerwehrschlauch zu trinken. Alle paar Tage gibt es eine neue Bibliothek, ein neues Modell, ein neues Framework. Es ist aufregend, erschreckend und ein bisschen ermüdend zugleich.

Meine eigene Reise in diesen speziellen Baugrube begann vor etwa sechs Monaten. Ich arbeitete an einem persönlichen Projekt – eine Art intelligenter Assistent, um meine immer größer werdende Liste von Blogideen und -recherchen zu verwalten. Ich wollte, dass er mehr tut, als nur Notizen zu speichern; ich wollte, dass er Verbindungen vorschlägt, relevante Neuigkeiten anzeigt und sogar Pläne basierend auf meinen Anfragen erstellt. Ich begann von null, wie ich es oft tue, indem ich mir sagte: „Was kann da schon schwierig sein?“ Berühmte letzte Worte, nicht wahr?

Ich fand mich schnell überwältigt von Entscheidungen wieder. Welches LLM-Framework? LangChain? LlamaIndex? Etwas anderes? Wie gehe ich mit der Persistenz um? Vektor-Datenbanken? Traditionelles SQL? NoSQL? Und die agentische Orchestrierung? Funktionsaufrufe? Nutzung von Tools? Ich verbrachte mehr Zeit damit, Modelle zu konfigurieren und architektonische Entscheidungen zu treffen, als ich tatsächlich mit dem Aufbau der grundlegenden Intelligenz verbrachte.

In diesem Moment verstand ich: Ich benötigte ein Starter Kit. Aber nicht irgendein Starter Kit. Ich brauchte etwas, das nicht nur eine Sammlung von Abhängigkeiten war, sondern ein durchdachter und überlegter Start, der einige dieser anfänglichen Entscheidungen für mich traf und mir erlaubte, mich auf die einzigartige Logik meines Agenten zu konzentrieren.

Was macht ein Smart Agent Starter Kit wirklich intelligent?

Es geht nicht nur darum, ein paar Pip-Pakete zu installieren. Ein wirklich intelligentes Starter Kit für Agenten geht über das hinaus. Es anticipiert die gängigen Bedürfnisse und bietet sinnvolle Standardwerte, während es Anpassungen ermöglicht. Denken Sie daran wie an eine gut ausgestattete Werkbank statt nur einer Kiste mit Teilen.

Durchdachte Entscheidungen, nicht nur Optionen

Das ist wahrscheinlich der entscheidendste Aspekt. Ein gutes Starter Kit trifft einige Entscheidungen für Sie. Es wählt ein grundlegendes LLM-Integrationsframework (z. B. LangChain), eine Vektor-Datenbank (z. B. Chroma oder Pinecone) und möglicherweise eine grundlegende Struktur zur Definition von Tools. Es bietet Ihnen nicht 17 verschiedene Möglichkeiten, dasselbe gleich am ersten Tag zu tun. Es sagt: „Hier ist eine gute Möglichkeit, zu beginnen. Darüber haben wir nachgedacht.“

Meine größte Frustration mit einigen Kits ist, wenn sie einfach eine Liste von kompatiblen Bibliotheken auflisten, ohne zu zeigen, wie sie integriert werden. Das ist kein Starter Kit; das ist eine Einkaufsliste. Ich möchte, dass jemand die IKEA-Kommode bereits aufgebaut hat, nicht nur, dass er mir den Innensechskantschlüssel und eine Tüte Schrauben gibt.

Vorab konfigurierte Komponenten des Basis-Agenten

Was sind die wesentlichen Elemente für fast jeden intelligenten Agenten?

  • LLM-Integration: Ein Weg, mit verschiedenen LLMs (OpenAI, Anthropic, lokale Modelle usw.) zu kommunizieren.
  • Funktions-/Toolaufrufe: Ein Mechanismus, damit Ihr Agent mit der Außenwelt interagiert (APIs, Datenbanken, lokales Dateisystem).
  • Gedächtnisverwaltung: Ein einfacher Weg, den Verlauf von Gesprächen oder andere relevante Kontexte zu speichern und abzurufen.
  • Persistenz: Wie erinnert sich Ihr Agent an Dinge zwischen den Sitzungen?
  • Grundlegende UI/API: Auch wenn es sich nur um eine einfache Befehlszeilenoberfläche oder einen grundlegenden FastAPI-Endpunkt handelt, benötigen Sie einen Weg, um mit Ihrem Agenten zu interagieren.

Ein intelligentes Starter Kit hat diese Elemente von Anfang an sinnvoll und funktional verkabelt. Sie sollten in der Lage sein, python main.py auszuführen und sofort einen sehr einfachen Agenten zu haben, der auf Anfragen antwortet, auch wenn er diese nur zurückgibt.

Beispiel 1: Das Blueprint LangChain-FastAPI-Chroma

Lasst uns über die Details sprechen. Als ich schließlich ein Kit fand (und es dann umfangreich anpasste), das für meinen Ideen-Assistenten funktionierte, kristallisierte es sich um diesen Stack:

  • Framework: LangChain (für seine starken agentischen Fähigkeiten und seine Abstraktion von Tools).
  • API: FastAPI (für eine leichte und asynchrone Weboberfläche).
  • Vektordatenbank: ChromaDB (für eine lokale, einfach zu startende Vektorspeicherung, und ich könnte später bei Bedarf aufrüsten).
  • Persistenz: Einfache JSON-Datei für den Chatverlauf, möglicherweise später auf eine geeignete Datenbank umsteigend.

Hier ist ein vereinfachter Überblick darüber, wie eine Verzeichnisstruktur und eine erste Konfiguration in einem solchen Kit aussehen könnten:


my_agent_starter/
├── app/
│ ├── __init__.py
│ ├── main.py # Einstiegspunkt FastAPI
│ └── services/
│ ├── __init__.py
│ └── agent_service.py # Enthält die Agentenlogik
├── core/
│ ├── __init__.py
│ ├── tools.py # Benutzerdefinierte Tools für den Agenten
│ └── memory.py # Konfiguration der Gedächtnisverwaltung
├── config.py # Umgebungsvariablen, API-Schlüssel
├── requirements.txt
└── .env.example

Die agent_service.py könnte etwas enthalten wie dies, um einen einfachen Agenten zum Laufen zu bringen:


# app/services/agent_service.py
import os
from langchain_openai import ChatOpenAI
from langchain.agents import AgentExecutor, create_react_agent
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.tools import Tool
from core.tools import get_current_time, get_weather # Beispiele für benutzerdefinierte Tools
from core.memory import get_conversation_memory

class MySmartAgent:
 def __init__(self, openai_api_key: str):
 self.llm = ChatOpenAI(model="gpt-4-0125-preview", temperature=0.7, openai_api_key=openai_api_key)
 self.tools = [
 Tool(
 name="GetTime",
 func=get_current_time,
 description="Nützlich, wenn Sie das aktuelle Datum und die Uhrzeit wissen müssen."
 ),
 Tool(
 name="GetWeather",
 func=get_weather,
 description="Nützlich, wenn Sie das Wetter in einer bestimmten Stadt wissen wollen. Der Eingabewert muss ein Stadtname sein."
 )
 ]
 self.memory = get_conversation_memory() # Einfache Hauptspeicher für den Moment

 self.prompt = ChatPromptTemplate.from_messages([
 ("system", "Sie sind ein nützlicher AI-Assistent. Sie haben Zugriff auf Tools, um Ihnen zu helfen, Fragen zu beantworten."),
 ("placeholder", "{chat_history}"),
 ("human", "{input}"),
 ("placeholder", "{agent_scratchpad}")
 ])

 self.agent = create_react_agent(self.llm, self.tools, self.prompt)
 self.agent_executor = AgentExecutor(agent=self.agent, tools=self.tools, verbose=True, memory=self.memory)

 async def run_query(self, query: str) -> str:
 response = await self.agent_executor.ainvoke({"input": query})
 return response["output"]

# Beispielanwendung (wäre normalerweise über main.py über FastAPI aufgerufen)
if __name__ == "__main__":
 from dotenv import load_dotenv
 load_dotenv()
 agent = MySmartAgent(openai_api_key=os.getenv("OPENAI_API_KEY"))
 import asyncio
 async def test_agent():
 print(await agent.run_query("Wie spät ist es?"))
 print(await agent.run_query("Wie ist das Wetter in London?"))
 asyncio.run(test_agent())

Die Schönheit davon ist, dass Sie sofort einen ausführbaren Agenten haben. Sie können den Toolsaufruf in Aktion sehen. Sie können dann get_current_time durch Ihr eigenes proprietäres Tool ersetzen, um Daten aus Ihren internen Systemen abzurufen, und die Logik des Agenten bleibt größtenteils dieselbe. Das ist der Wert.

Über den Code hinaus: Dokumentation und Beispiele

Ein Starter Kit ist so gut wie seine Dokumentation und seine Beispiele. Ich habe unzählige „Kits“ heruntergeladen, die nur Code-Repositories ohne Erklärung waren. Das ist wie einem gegeben zu werden, um einen Automotor zu bauen, und gesagt zu bekommen, man solle ein Auto ohne Handbuch bauen.

  • Klare Konfigurationsanweisungen: Wie installiert man die Abhängigkeiten? Wie konfiguriert man die Umgebungsvariablen?
  • Benutzungsbeispiele: Einfache und ausführbare Beispiele, die zeigen, wie man mit dem Agenten interagiert, wie man ein neues Tool hinzufügt und wie man den LLM ändert.
  • Architektonische Übersicht: Eine kurze Erklärung, warum bestimmte Entscheidungen getroffen wurden und wo sich verschiedene Teile der Logik befinden. Hier glänzt der „überlegte“ Teil.

Ich erinnere mich an ein Kit, das ich für ein anderes Projekt ausprobiert habe. Es hatte eine Dockerfile, was großartig war, aber es erwähnte nicht, wie man es zum Laufen bringt oder wie man mit der API interagiert, die es bereitstellt. Ich habe eine Stunde damit verbracht, den Python-Code zu durchsuchen, um die Endpunkte der API und die Anfrageformate zu finden. Ein einfaches curl-Beispiel im README hätte mir so viel Zeit gespart. Lassen Sie die Leute nicht raten!

Die Evolution: Vom Starter Kit zum produktiven Agenten

Ein gutes Starter Kit soll nicht nur dazu dienen, abzuheben; es muss eine solide Grundlage für das Wachstum bieten. Mein aktueller Ideenassistent hat sich beispielsweise seit dieser ursprünglichen LangChain-FastAPI-Chroma-Konfiguration erheblich weiterentwickelt:

  • Speicher: Vom einfachen Puffer zu einem fortschrittlicheren RAG (Retrieval Augmented Generation)-System gewachsen, das auf Vektoren basiert und meine eigenen Notizen verwendet.
  • Werkzeuge: Hinzufügen von Tools, um mit meiner Notizanwendung (Obsidian), einer Nachrichten-API und sogar einem einfachen Websuch-Tool zu interagieren.
  • Bereitstellung: Alles containerisiert und auf einer Cloud-VM bereitgestellt, zugänglich über eine sichere API.
  • Überwachung: Ein einfaches Protokoll und eine Nutzungsverfolgung für Tokenverbrauch und Agentenleistung integriert.

Die Tatsache ist, dass mir das Starter Kit das Gerüst geliefert hat. Ich musste nicht neu denken, wie ein Agent erstellt wird, wie die Tools registriert werden oder wie man eine API bereitstellt. Ich habe auf bestehendem, funktionierendem Code aufgebaut.

Beispiel 2: Hinzufügen eines benutzerdefinierten Tools mit einem fiktiven API-Aufruf

Stellen Sie sich vor, Sie möchten, dass Ihr Agent mit einer hypothetischen internen API für die „Ideenverwaltung“ interagiert. So könnten Sie ein Tool zur bestehenden Struktur hinzufügen:


# core/tools.py (Fortsetzung des vorherigen Beispiels)

import requests
import json

def get_current_time() -> str:
 """Gibt das aktuelle Datum und die Uhrzeit zurück."""
 from datetime import datetime
 return datetime.now().isoformat()

def get_weather(city: str) -> str:
 """Holt die aktuelle Wetterlage für eine angegebene Stadt (fiktive Implementierung)."""
 # In einem echten Szenario würde dies eine Wetter-API aufrufen
 if city.lower() == "london":
 return "Es ist bewölkt bei einer Regenwahrscheinlichkeit, 10 Grad Celsius."
 elif city.lower() == "new york":
 return "Sonnig und mild, 18 Grad Celsius."
 else:
 return f"Kann das Wetter für {city} nicht finden."

def search_ideas(query: str) -> str:
 """Durchsucht das interne Ideenverwaltungssystem nach relevanten Ideen basierend auf einer Anfrage."""
 # Dies wäre ein echter API-Aufruf an Ihr Backend
 mock_api_response = {
 "results": [
 {"id": "1", "title": "Blogartikel über KI-Ethische Fragen", "tags": ["KI", "Ethik", "Blog"]},
 {"id": "2", "title": "Forschung zu Techniken des Fine-Tuning von LLM", "tags": ["LLM", "Forschung", "Fine-Tuning"]}
 ],
 "query": query
 }
 # Simuliert einen API-Aufruf
 # response = requests.get(f"https://your-idea-api.com/search?q={query}")
 # return response.json()
 return json.dumps(mock_api_response)

# In app/services/agent_service.py würden Sie dies zu Ihrer Liste von Tools hinzufügen:
# from core.tools import search_ideas
# ...
# self.tools = [
# ...,
# Tool(
# name="SearchIdeas",
# func=search_ideas,
# description="Nützlich, wenn Sie bestehende Ideen im System suchen müssen. Die Eingabe sollte eine Suchanfrage sein."
# )
# ]

Damit kann Ihr Agent jetzt auf Anfragen wie „Finde mir Ideen zur KI-Ethische Fragen“ reagieren, indem er Ihr neues Tool SearchIdeas aufruft. Das Starter Kit macht diese Erweiterung einfach, da das Integrationsmodell für Tools bereits festgelegt ist.

Praktische Tipps für Ihr nächstes Agentenprojekt

Also, worauf sollten Sie bei einem Starter Kit für einen intelligenten Agenten achten, oder sogar eine bauen?

  1. Priorisieren Sie ein durchdachtes Design: Suchen Sie nach Kits, die sinnvolle Entscheidungen über den Technologie-Stack für Sie treffen (zum Beispiel, LangChain + FastAPI + Chroma). Erfinden Sie das Rad nicht am ersten Tag neu.
  2. Prüfen Sie die grundlegenden Komponenten: Stellen Sie sicher, dass es eine vorverkabelte LLM-Integration, Tool-Calls, einen Basis-Speicher und eine einfache Interaktionsmöglichkeit (CLI/API) gibt.
  3. Fordern Sie klare Dokumentation: Installationsanleitungen, Benutzungsbeispiele und eine architektonische Übersicht sind unverzichtbar. Wenn Sie raten müssen, ist es kein gutes Kit.
  4. Testen Sie die Erweiterbarkeit: Können Sie leicht neue Tools hinzufügen? Können Sie Komponenten (zum Beispiel die Vektordatenbank wechseln) ersetzen, ohne alles neu zu schreiben?
  5. Beitragen oder anpassen: Wenn Sie nicht das perfekte Kit finden, haben Sie keine Angst davor, eine gute Basis zu nehmen und sie stark anzupassen. Oder, noch besser, tragen Sie Ihre Verbesserungen zur Gemeinschaft bei. So kommen wir alle voran.

In der sich schnell entwickelnden Welt der intelligenten Agenten ist ein gut gestaltetes Starter Kit nicht nur ein Vorteil; es ist ein strategischer Vorteil. Es befreit Sie von banalen Konfigurationsaufgaben und ermöglicht es Ihnen, sich auf die interessanten und einzigartigen Probleme zu konzentrieren, für die Ihr Agent entwickelt wurde. Und genau da beginnt, meine Freunde, der wirkliche Spaß.

🕒 Published:

✍️
Written by Jake Chen

AI technology writer and researcher.

Learn more →
Browse Topics: comparisons | libraries | open-source | reviews | toolkits
Scroll to Top