KI Coding / Agent Harness

#8076727
Lesenswert?

Mittlerweile gibt es ungefähr eine Zilion Programmier- und Agentenorchestratoren um verschiedene KI-Modelle zu bedienen. Es ist ziemlich schwierig, in dem ganzen Wust das richtige zu finden und auszuwählen, da ja im Moment noch alles im Fluss ist.

Gerade eben habe ich wieder 2 interessante entdeckt, was haltet ihr von denen?

  1. PI mit ansprechender Webseite
    https://pi.dev/

  2. Row-Bot
    https://github.com/siddsachar/row-bot

Als Auswahlkriterium könnte folgendes dienen:

  • Kann man lokale Modelle verwenden?
  • Läuft es auf einem RasPi?
  • Welches Ziel haben die Ersteller des Harness?
  • Ist es sicher?

Was verwendet ihr?

: Bearbeitet durch User
#8076779
Lesenswert?

Bei mir Claude Code in VSCode, zB mit Sonnet oder Opus. Absolut irre was da geht. Hab vorher über 30 Jahre klassisch Software entwickelt, die Erfahrung hilft, die KI in die gewünschte Richtung zu dirigieren.

Nachteile? Anthropic verdient. Code läuft durch deren Server. Abhängigkeit steigt. Und theoretisch kann er böse Skripte schreiben und ausführen.

Aktuell überwiegen für mich die Vorteile. Ideen in der Art "könnte man mal machen aber das ist sehr aufwändig" lassen sich nun ruckzuck umsetzen.

#8076799
Lesenswert?

Uwe schrieb:

Bei mir Claude Code in VSCode, zB mit Sonnet oder Opus. Absolut irre was da geht. Hab vorher über 30 Jahre klassisch Software entwickelt, die Erfahrung hilft, die KI in die gewünschte Richtung zu dirigieren.

Mein Ziel ist, eine lokale KI zu verwenden. Im Moment habe ich https://pi.dev/ auf einem Raspi installiert, der mit einem qwen3.6 auf der DGX-Spark kommuniziert. Immerhin hat es das Ding geschafft, eine Verbindung zu meinem Board hier herzustellen:
Beitrag "altes Phytec MCB-51 Monitor/Basic Befehle?"

Es hatte aber Probleme zu verstehen, dass man nicht in den BASIC Modus gehen darf bevor man nicht "conf 0" abgesetzt hat, um die Print-Ausgabe auf die serielle Schnittstelle umzulenken.

#8076822
Lesenswert?

Ich nutze meist Opencode. Bislang reichen mir die integrierten kostenlosen Modelle. Testweise nutze ich auch lokal Qwen3.6 27B, das ist aber doch recht langsam. Ich mache aber auch nicht viel damit.

Ich hab vergleichsweise mal Pi mit dem lokalen Modell getestet. Irgendwie ist das für mich total unbrauchbar. Tool-calls schlagen ständig fehlt und es kommt nichts gescheites dabei rum. Mit nem fetteren Modell ist das vielleicht anders.

Wenn ich das richtig sehe, hat sich irgendwann der System-Prompt von Opencode von 10k auf ~8k tokens reduziert. Nur ~1k wie bei Pi zu haben, wäre schon nice. Das war der Hauptgrund, dass ich Pi probiert habe.

MCPs und so habe ich keine am laufen.

#8076830
Lesenswert?

Im Moment habe ich https://pi.dev/ auf einem Raspi installiert, der mit einem qwen3.6 auf der DGX-Spark kommuniziert.

Also ich hab da auch schon mal kurz drueber nachgedacht. SEHR KURZ. Weil auf einem normalen ueblichen StandardPC liegen die Antwortzeiten schon im Bereich 30s bis Minuten wenn das im Ram liegt. Da willst du eigentlich sehr schnell eine coole Grafikkarte sonst verliert man den Spass dran.

Vanye

#8077284
Lesenswert?

von hier: Beitrag "Re: KI Modellgeschwindigkeit verschiedene Hardware"

Klaus P. schrieb:

Vanye R. schrieb:

Ich bin durch Zufall auf einen interessaten Artikel gestossen auf den aufmerksam zu machen, ich mir hiermit erlaube. :)

https://tech-insider.org/de/rag-chatbot-selbst-bauen-lokal-2026/

Ich habe im letzten Jahr etwas mit RAG experimentiert. Die Ergebnisse waren enttäuschend. Das liegt in erster Linie an der Vektorsuche.

Bei ganz kleinen Datenbanken mit wenigen Dokumenten oder bei Datenbanken, die nur sehr unterschiedliche Dokumente enthalten, mag das noch gehen. Wenn man aber z.B. Datenblätter per KI durchsuchen will, ähneln sich die Inhalte dieser Dokumente sehr. Die reine Vektorsuche findet dann die Chunks, die am besten zur Frage passen. Der Chunk enthält aber keine Metadaten - d.h. die Vektorsuche berücksichtigt z.B. das Bauteil, das ja nicht überall im Text neu erwähnt wird, nicht. Man erhält also in vielen Fällen eine Antwort, die zwar zum Inhalt der Frage passt, sich aber nicht auf das gewünschte Bauteil bezieht.

In dem verlinkten Artikel steht ganz unten ein Absatz, der mit "Der nächste logische Ausbau" beginnt. Die Punkte, die darin erwähnt sind, scheinen für eine nutzbare Anwendung unerlässlich zu sein. Und die sind wesentlich aufwändiger als die Skripte für das einfache RAG.

Klaus P. schrieb:

In diesem Video wird das kurz vorgestellt: https://www.youtube.com/watch?v=RU8Ad_5rrnE

Darin werden auch die Schwächen des LLM Wikis durchleuchtet. Für eine Wissensdatenbank z.B. mit Datenblättern ist das m.E. derzeit nicht geeignet.

Ich habe es auch noch nicht ausprobiert. Die im Video aufgezählten Schwächen wie Ungenauigkeiten durch Kompression lassen sich vielleicht ja durch Links im Wiki auf die echten Dokumente realisieren, die man bei Bedarf nach Genauigkeit dann aufruft und analysieren lässt.

: Bearbeitet durch User
#8077328
Lesenswert?

Es gibt verschiedene Arten von Agentensystemen. Einerseits die Codingsysteme wie Claude-Code und ähnlich, andererseits aber die freien Agenten, die alles mögliche auf dem Computer installieren und kreieren können wie ClawBot oder HermesAgent. Im Moment probiere ich gerade HermesAgent auf RasPi mit qwen3.6:35b auf externem Rechner. Grundsätzlich tut es schon mal, kämpft aber noch mit Microphon und Lautsprecher, damit ich mit dem Ding reden kann.

Hier eine Liste möglicher Agentensystemen, vielleicht kennt ja noch jemand andere:

1
hermes
2
clawbot
3
opencode
4

5
Pi
6
https://pi.dev/
7

8
Row-Bot
9
https://github.com/siddsachar/row-bot
10

11
Ellema
12
https://elpa.gnu.org/packages/ellama.html
13

14
Continue (VS-Code Plugin)
15
Antigravity
16
Claude Code
17
Cursor
18
OpenAI Codex
19
Gemini CLI
20
GitHub Copilot
21
Amp
22
Roo Code
23
Goose
24
Windsurf
#8077611
Lesenswert?

von hier: Beitrag "Re: KI Modellgeschwindigkeit verschiedene Hardware"

Sheeva P. schrieb:

Klaus P. schrieb:

Ich habe im letzten Jahr etwas mit RAG experimentiert. Die Ergebnisse waren enttäuschend. Das liegt in erster Linie an der Vektorsuche.

Bei ganz kleinen Datenbanken mit wenigen Dokumenten oder bei Datenbanken, die nur sehr unterschiedliche Dokumente enthalten, mag das noch gehen. Wenn man aber z.B. Datenblätter per KI durchsuchen will, ähneln sich die Inhalte dieser Dokumente sehr. Die reine Vektorsuche findet dann die Chunks, die am besten zur Frage passen. Der Chunk enthält aber keine Metadaten - d.h. die Vektorsuche berücksichtigt z.B. das Bauteil, das ja nicht überall im Text neu erwähnt wird, nicht.

Vielleicht wäre im diesem Fall eine klassische Volltext-Suchmaschine wie OpenSearch besser geeignet. Die kann auch Vektorsuche, bei Bedarf auch kombiniert mit klassischen, bei Bedarf auch unscharfen Suchlgorithmen über indizierte Daten und Tfidf zur Gewichtung von Worten anhand ihrer Häufigkeiten. Bei Elastic- und OpenSearch lassen sich die PDFs auch gleich über ein Plugin mit Apache Tika (iirc) einlesen.

Vielleicht geht sowas ja schon mit einem einfachen "tool call" auf der lokalen Festplatte die man nach vollständigen, abgelegten Datenblättern durchsucht.

#8077614
Lesenswert?

von hier: Beitrag "Re: KI Modellgeschwindigkeit verschiedene Hardware"

Εrnst B. schrieb:

Klaus P. schrieb:

Die reine Vektorsuche findet dann die Chunks, die am besten zur Frage passen. Der Chunk enthält aber keine Metadaten

Du kannst beim indizieren die Metadaten hinzufügen, als "title","summary", "metadata":{"chip":"NE555","type":"datasheet"}... Dann instruierst deine KI, dass bei Suche nach Datenblättern das "chip"-Feld möglichst mit in die Suchanfrage soll, oder bei den Antwort-Chunks kontrolliert werden soll, ob die Antwort auch zum richtigen Datenblatt gehört.

Ist halt keine schlüsselfertige Lösung, wo du einfach einfach einen Ordner an PDFs reinwerfen kannst. Aber jetzt auch nicht so der Riesen-Aufwand ein kleines LLM in den Import-Prozess zu hängen, was dir für jedes PDF einmalig die Metadaten im passenden Format extrahiert.

Mittlerweile glaube ich fast, dass man am besten sein eigens LLM-Harness schreibt, das diese Funktionen dann ausführt.

Scheinbar hat man da eine ganze Zeit lang "Langgraph" verwendet, was aber schon wieder "out" scheint:
https://medium.com/@writertripathi/langchain-and-langgraph-are-dead-so-what-to-use-4a6033621fce

: Bearbeitet durch User
#8078017
Lesenswert?

Christoph M. schrieb:

von hier: Beitrag "Re: KI Modellgeschwindigkeit verschiedene Hardware"

Sheeva P. schrieb:

Klaus P. schrieb:

Ich habe im letzten Jahr etwas mit RAG experimentiert. Die Ergebnisse waren enttäuschend. Das liegt in erster Linie an der Vektorsuche.

Bei ganz kleinen Datenbanken mit wenigen Dokumenten oder bei Datenbanken, die nur sehr unterschiedliche Dokumente enthalten, mag das noch gehen.

Mit wenigen Datenblättern wird das aber besonders schwierig, denn dann fehlt es an Daten für das Training von passenen Word Embeddings. Und genau die sind ja notwendig, um Ähnlichkeiten bei den Bedeutungen von Worten zu finden.

Wenn man aber z.B. Datenblätter per KI durchsuchen will, ähneln sich die Inhalte dieser Dokumente sehr. Die reine Vektorsuche findet dann die Chunks, die am besten zur Frage passen. Der Chunk enthält aber keine Metadaten - d.h. die Vektorsuche berücksichtigt z.B. das Bauteil, das ja nicht überall im Text neu erwähnt wird, nicht.

Vielleicht wäre im diesem Fall eine klassische Volltext-Suchmaschine wie OpenSearch besser geeignet. Die kann auch Vektorsuche, bei Bedarf auch kombiniert mit klassischen, bei Bedarf auch unscharfen Suchlgorithmen über indizierte Daten und Tfidf zur Gewichtung von Worten anhand ihrer Häufigkeiten. Bei Elastic- und OpenSearch lassen sich die PDFs auch gleich über ein Plugin mit Apache Tika (iirc) einlesen.

Vielleicht geht sowas ja schon mit einem einfachen "tool call" auf der lokalen Festplatte die man nach vollständigen, abgelegten Datenblättern durchsucht.

Das mag für wenige Dokumente funktionieren, aber bei vielen Datenblättern wird sowas kein Vergnügen bereiten. Erstens, weil die handelsüblichen Tools jeweils die kompletten Dateien lesen und scannen müssen, das dürfte nicht allzu performant und insbesondere auch nicht ressourcenschonend werden, und womöglich viele Falschpositive provozieren. Zweitens aber auch weil sich in die lokalen Tools nur mit erheblichem Aufwand Funktionen wie ein anständiges Scoring (mit der Gewichtung von Ergebnisqualitäten), unscharfe Suche, Word Embeddings für die Vektorsuche, oder kombinierte Queries mit Gewichten einbauen lassen.

Klar, irgendwie könnte all das irgendwie gehen, wenn man einen entsprechenden Aufwand betreibt -- aber warum sollte man sowas tun, wenn all diese Funktionen bei einer Volltextsuchmaschine bereits zum Standardumfang gehören? Ja, OpenSearch und Elasticsearch sind ziemliche Monster, keine Frage, aber sie haben dafür eben auch sehr viel zu bieten. Und dabei sind sie ultraschnell, locker Faktor 10 bis Faktor 100 schneller als klassische SQL-Datenbanken und mit Sicherheit noch mehr im Vergleich mit den klassischen Tools auf der Kommandozeile wie grep(1), find(1), locate(1) und Co.

#8078213
Lesenswert?

Scheinbar hat man da eine ganze Zeit lang "Langgraph" verwendet, was aber schon wieder "out" scheint: https://medium.com/@writertripathi/langchain-and-langgraph-are-dead-so-what-to-use-4a6033621fce

Tja, Du hättest den Artikel mal besser kritisch lesen sollen anstatt nur auf die Clickbait-Headline hereinzufallen...

Mittlerweile glaube ich fast, dass man am besten sein eigens LLM-Harness schreibt, das diese Funktionen dann ausführt.

...dann würdest Du auch den Unterschied zwischen Wissen und Glauben kennen.

#8078223
Lesenswert?

Ja, OpenSearch und Elasticsearch sind ziemliche Monster, keine Frage, aber sie haben dafür eben auch sehr viel zu bieten. Und dabei sind sie ultraschnell, locker Faktor 10 bis Faktor 100 schneller als klassische SQL-Datenbanken und mit Sicherheit noch mehr im Vergleich mit den klassischen Tools auf der Kommandozeile wie grep(1), find(1), locate(1) und Co.

Beides sind in der Tat zwei sehr gute Suchmaschinen, aber wie die meisten anderen Lösungen muss ein Agent auch hier iterativ sich an die Ergebnisse herantasten weil er schlichtweg ausprobieren muss, mit welchen Suchmustern er Ergebnisse bekommt die er dann validieren muss. Kostet sehr viele Loops & Toolcalls. Ob die nackte Suche Faktor 100 schneller ist spielt dann keine Rolle mehr, die Zeit & Tokens werden in der ReAct Loop verbraten.

Und zwei Tage später beginnt dasselbe Spiel von vorne weil euer Agent nicht lernen kann...

#8078415
Lesenswert?

1N 4. schrieb:

Sheeva P. schrieb:

Ja, OpenSearch und Elasticsearch sind ziemliche Monster, keine Frage, aber sie haben dafür eben auch sehr viel zu bieten. Und dabei sind sie ultraschnell, locker Faktor 10 bis Faktor 100 schneller als klassische SQL-Datenbanken und mit Sicherheit noch mehr im Vergleich mit den klassischen Tools auf der Kommandozeile wie grep(1), find(1), locate(1) und Co.

Beides sind in der Tat zwei sehr gute Suchmaschinen, aber wie die meisten anderen Lösungen muss ein Agent auch hier iterativ sich an die Ergebnisse herantasten weil er schlichtweg ausprobieren muss, mit welchen Suchmustern er Ergebnisse bekommt die er dann validieren muss. Kostet sehr viele Loops & Toolcalls. Ob die nackte Suche Faktor 100 schneller ist spielt dann keine Rolle mehr, die Zeit & Tokens werden in der ReAct Loop verbraten.

Bei anderen Lösungen müßten verschiedene Suchmuster ausprobiert werden, mit Open- und Elasticsearch hingegen nur wenige -- und zudem werden Ergebnisse dort nach Trefferqualität ausgegeben, so daß die Wahrscheinlichkeit, ohne weiteres Zutun in wenigen Schritten auf gute Ergebnisse zu kommen, deutlich höher sein dürfte. Letztlich müssen wir nicht mit dem Idealfall vergleichen, sondern mit den möglichen Alternativen, und die sehen aus meiner Perspektive allesamt sehr viel aufwändiger aus.

#8078478
Lesenswert?

Bei anderen Lösungen müßten verschiedene Suchmuster ausprobiert werden, mit Open- und Elasticsearch hingegen nur wenige -- und zudem werden Ergebnisse dort nach Trefferqualität ausgegeben, so daß die Wahrscheinlichkeit, ohne weiteres Zutun in wenigen Schritten auf gute Ergebnisse zu kommen, deutlich höher sein dürfte. Letztlich müssen wir nicht mit dem Idealfall vergleichen, sondern mit den möglichen Alternativen, und die sehen aus meiner Perspektive allesamt sehr viel aufwändiger aus.

Reranking BM25/Sparse/Dense ist in allen gängigen Lösungen mittlerweile Standard. Wo aber z.B. auch OS/ES scheitert sind so Banalitäten wie Einheiten/Skalen, z.B. mm/inch oder nA/mA wenn es um parametrische Suche geht. Auch Informationen aus eingebetteten Diagrammen gehen schnell verloren. Man kommt also auch hier nicht um einen deutlich verbesserten Ingest herum.

Wenn es simpel sein soll würde ich eher zu Cognee mit Custom Ingest raten.

: Bearbeitet durch User

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren