Integrierten AI-Mitarbeiter definieren
Integrierte AI-Mitarbeiter werden zusammen mit dem Plugin registriert. Beim ersten Laden des Plugins erstellt NocoBase den entsprechenden Mitarbeiterdatensatz und markiert diesen als integrierten Mitarbeiter. Bei nachfolgenden Ladevorgängen des Plugins werden die Standardprofile, Prompts, Skills und Tools des Mitarbeiters basierend auf dem Code aktualisiert.
Einzeldateien und Verzeichnisstrukturen
Wenn die Profilinformationen einfach sind und keine separaten Prompts oder exklusiven Ressourcen benötigt werden, kann eine Einzeldatei verwendet werden:
Wenn prompt.md, ein exklusiver Skill oder ein exklusives Tool benötigt wird, verwenden Sie ein Verzeichnis:
Die Verzeichnisstruktur eignet sich besser für die langfristige Wartung.
Verwendung von defineAIEmployee()
index.ts verwendet defineAIEmployee(), das von @nocobase/ai bereitgestellt wird:
Die wichtigsten Felder sind wie folgt:
Der Typ von tools ist derzeit ein Array von Objekten:
autoCall wird nur verwendet, um die Aufrufrechte des aktuellen AI-Mitarbeiters für CUSTOM-Tools zu überschreiben. Für GENERAL- und SPECIFIED-Tools gilt zur Laufzeit weiterhin die defaultPermission des Tools selbst. Wenn ein CUSTOM-Tool keine Konfiguration auf Mitarbeiterebene besitzt, wird ebenfalls auf die defaultPermission des Tools zurückgegriffen.
Automatisch im Verzeichnis entdeckte Tools werden als { name: 'toolName' } normiert.
Lange Prompts in prompt.md auslagern
Wenn ein AI-Mitarbeiter in Form eines Verzeichnisses definiert ist, kann der Systemprompt in eine gleichnamige prompt.md Datei im selben Verzeichnis gelegt werden:
Wenn prompt.md existiert, überschreibt es den systemPrompt in index.ts. Lange Prompts in einer Markdown-Datei zu hinterlegen, erleichtert die Überprüfung und vermeidet Probleme mit Escaping-Sequenzen in TypeScript-Template-Strings.
Beispiel für einen integrierten AI-Mitarbeiter: Nathan
Das Mitarbeiterprofil in packages/plugins/@nocobase/plugin-flow-engine/src/ai/ai-employees/nathan/index.ts ist sehr kurz:
Die vollständigen Fähigkeiten von Nathan stammen aus anderen Ressourcen im selben Verzeichnis:
Der Ladevorgang führt automatisch eine dreistufige Bindung durch:
- Dateien in
tools/werden als Tools registriert - Tools werden automatisch dem
frontend-developer-Skill zugeordnet - Der Skill wird automatisch Nathan zugeordnet
Daher ist es nicht erforderlich, die gesamten skills und tools in index.ts erneut aufzuführen.
Verwandte Links
- Entwicklung von AI-Mitarbeiter-Plugins — Das Zusammenspiel von integriertem AI-Mitarbeiter, Tool und Skill kennenlernen
- Skill definieren — Einen mitarbeiterspezifischen Skill erstellen
- Vollständiges Beispiel: Integrierten AI-Mitarbeiter erstellen — Das vollständige Mitarbeiterverzeichnis und den Registrierungsprozess ansehen
- Internationalisierung von AI-Mitarbeiter-Plugins — Unterschiede bei der Lokalisierung von Mitarbeiterprofilen sowie Tool- und Skill-Texten kennenlernen

