Nachdem ich endlich die gesamte Website und die Dokumentation in einen wasserdichten Übersetzungs-Workflow (unter Verwendung von po4a über Hugo) integriert hatte, der zufällig das exakt gleiche Toolset und die gleiche Logik wie die Ansel-Anwendung verwendet, kam mir die Idee, leere Übersetzungen zu automatisieren, zuerst aus den Software-Übersetzungsdateien, dann über die ChatGPT-API, die bei der Übersetzung von Markdown-Syntax durchaus einen guten Job macht.
Wenn man allein arbeitet, kann man sich nicht auf soziale Faulheit verlassen, also muss man clever sein. Du kannst die Liste der Dinge, die ich bereits im Hintergrund für Ansel automatisiert habe, sehen.
Nachdem ich selbst eine komplette AI-Suchmaschine geschrieben habe, was hauptsächlich bedeutet, einen Web-Crawler zu entwickeln (weil das der mühsamste Teil zum Schreiben und Debuggen war), hatte ich die Gelegenheit, diese Website aus der Sicht eines Bots zu sehen. Stück für Stück habe ich die HTML-Vorlagen und die Metadaten modifiziert, um das Crawlen, Indexieren und Durchsuchen zu erleichtern, zuerst für die interne Suchmaschine,1 dann für Chantal AI .
Selbst mit Chantal bekomme ich noch zu viele wiederkehrende Fragen zu Informationen, die bereits irgendwo geschrieben stehen. Sicher, die Dokumentation hinkt dem Code etwas hinterher, aber die Commit-Nachrichten , die ich schreibe, zielen darauf ab, nicht zu technisch zu sein, damit Power-User verstehen, was derzeit in der Software vor sich geht.
Ich verstehe, dass es nichts Schlimmeres gibt, als in seinem Problem festzustecken, ohne eine rechtzeitige Antwort zu bekommen, aber ich kann nicht als Helpdesk für jeden Kerl in jeder Zeitzone fungieren, mit allem, was in dieser dummen Software bereinigt werden muss. Das bedeutet, dass es immer noch eine Lücke zu füllen gibt.
Der Hauptnachteil von Chantal ist, dass das Sprachmodell ziemlich schwer neu zu trainieren ist, und ich kann es nicht automatisiert auf einem Server betreiben. Außerdem können Websites nicht zu schnell gecrawlt werden, ohne von Servern blockiert zu werden, was zwar nicht zu viel Leistung erfordert, aber einen Computer benötigt, der eine Woche lang mit stabiler Internetverbindung angeschlossen ist. Das bedeutet, dass ich das Sprachmodell und den Webindex nur viermal im Jahr aktualisiere. Derzeit enthält der Webindex 63.452 Seiten, das Sprachmodell kennt 47.579 Wörter, und es ist mir endlich gelungen, es einigermaßen mit den Speicher-I/O-Beschränkungen eines Shared Hostings kompatibel zu machen.
Der Plan ist jetzt, das Crawlen von Websites auf einem Server zu automatisieren, da das nicht zu schwerwiegend ist, und dann das Modell über Nacht auf meinem eigenen Computer neu zu trainieren (was etwa 4 Stunden Rechenzeit und fast meinen gesamten RAM von 32 GB benötigt…).
Übrigens, während meiner Spielereien mit der ChatGPT-API habe ich entdeckt, dass man sein eigenes angepasstes GPT trainieren kann.2 Es ist so einfach, ihm Textinhalte zu geben, die es verwenden kann, und jetzt kann ChatGPT auch Websites und Sitemaps laden und so konfiguriert werden, Anfragen an die Rest-API zu senden. Also, ohne weitere Umschweife, trefft Ansel GPT .
Ansel GPT ist so konfiguriert, dass es einmal pro Woche Github-Issues, Commits, Community-Forenbeiträge und die gesamte aktuelle Website zwischenspeichert und aktualisiert. Es ist in der Lage, komplexe (und ziemlich genaue) Antworten bezüglich der Frage zu geben, welches Modul man wann und wie in Ansel verwenden soll, sowie zu Farbtheoriekonzepten. Ich habe es auch so konfiguriert, dass es Chantal AI als Backend verwendet, welches (fast) eine Rest-API ist, und das GPT wird die von Chantal indexierten Links folgen, um seine Antworten zu verbessern.
Der Haken ist, dass die Nutzung von Ansel GPT den ChatGPT Plus-Abonnenten vorbehalten ist, also habe ich das Gefühl, zwei Tage gearbeitet zu haben, um alles zu konfigurieren, damit OpenAI von meiner Arbeit profitiert. Aber egal, wenn das zumindest weniger Arbeit für mich auf mittlere Sicht bedeutet, nennen wir es einen Gewinn.
Translated from English by : ChatGPT. In case of conflict, inconsistency or error, the English version shall prevail.