mirror of
https://github.com/simstudioai/sim.git
synced 2026-01-08 22:48:14 -05:00
feat(i18n): update translations (#2541)
Co-authored-by: waleedlatif1 <waleedlatif1@users.noreply.github.com>
This commit is contained in:
@@ -35,81 +35,87 @@ Sobald Ihre Dokumente verarbeitet sind, können Sie die einzelnen Chunks anzeige
|
||||
<Image src="/static/knowledgebase/knowledgebase.png" alt="Dokumentchunk-Ansicht mit verarbeiteten Inhalten" width={800} height={500} />
|
||||
|
||||
### Chunk-Konfiguration
|
||||
- **Standardgröße der Chunks**: 1.024 Zeichen
|
||||
- **Konfigurierbarer Bereich**: 100-4.000 Zeichen pro Chunk
|
||||
- **Intelligente Überlappung**: Standardmäßig 200 Zeichen zur Kontexterhaltung
|
||||
- **Hierarchische Aufteilung**: Respektiert Dokumentstruktur (Abschnitte, Absätze, Sätze)
|
||||
|
||||
### Bearbeitungsfunktionen
|
||||
Beim Erstellen einer Wissensdatenbank können Sie konfigurieren, wie Dokumente in Chunks aufgeteilt werden:
|
||||
|
||||
| Einstellung | Einheit | Standard | Bereich | Beschreibung |
|
||||
|---------|------|---------|-------|-------------|
|
||||
| **Maximale Chunk-Größe** | Tokens | 1.024 | 100-4.000 | Maximale Größe jedes Chunks (1 Token ≈ 4 Zeichen) |
|
||||
| **Minimale Chunk-Größe** | Zeichen | 1 | 1-2.000 | Minimale Chunk-Größe, um winzige Fragmente zu vermeiden |
|
||||
| **Überlappung** | Zeichen | 200 | 0-500 | Kontextüberlappung zwischen aufeinanderfolgenden Chunks |
|
||||
|
||||
- **Hierarchische Aufteilung**: Berücksichtigt die Dokumentstruktur (Abschnitte, Absätze, Sätze)
|
||||
|
||||
### Bearbeitungsmöglichkeiten
|
||||
- **Chunk-Inhalt bearbeiten**: Textinhalt einzelner Chunks ändern
|
||||
- **Chunk-Grenzen anpassen**: Chunks bei Bedarf zusammenführen oder teilen
|
||||
- **Chunk-Grenzen anpassen**: Chunks nach Bedarf zusammenführen oder aufteilen
|
||||
- **Metadaten hinzufügen**: Chunks mit zusätzlichem Kontext anreichern
|
||||
- **Massenoperationen**: Effiziente Verwaltung mehrerer Chunks
|
||||
- **Massenoperationen**: Mehrere Chunks effizient verwalten
|
||||
|
||||
## Erweiterte PDF-Verarbeitung
|
||||
|
||||
Für PDF-Dokumente bietet Sim erweiterte Verarbeitungsfunktionen:
|
||||
|
||||
### OCR-Unterstützung
|
||||
Bei Konfiguration mit Azure oder [Mistral OCR](https://docs.mistral.ai/ocr/):
|
||||
Wenn mit Azure oder [Mistral OCR](https://docs.mistral.ai/ocr/) konfiguriert:
|
||||
- **Verarbeitung gescannter Dokumente**: Text aus bildbasierten PDFs extrahieren
|
||||
- **Umgang mit gemischten Inhalten**: Verarbeitung von PDFs mit Text und Bildern
|
||||
- **Verarbeitung gemischter Inhalte**: PDFs mit Text und Bildern verarbeiten
|
||||
- **Hohe Genauigkeit**: Fortschrittliche KI-Modelle gewährleisten präzise Textextraktion
|
||||
|
||||
## Verwendung des Wissensblocks in Workflows
|
||||
## Verwendung des Knowledge-Blocks in Workflows
|
||||
|
||||
Sobald Ihre Dokumente verarbeitet sind, können Sie sie in Ihren KI-Workflows über den Wissensblock nutzen. Dies ermöglicht Retrieval-Augmented Generation (RAG), wodurch Ihre KI-Agenten auf Ihre Dokumentinhalte zugreifen und darüber nachdenken können, um genauere, kontextbezogene Antworten zu liefern.
|
||||
Sobald Ihre Dokumente verarbeitet sind, können Sie sie in Ihren KI-Workflows über den Knowledge-Block verwenden. Dies ermöglicht Retrieval-Augmented Generation (RAG), wodurch Ihre KI-Agenten auf Ihre Dokumentinhalte zugreifen und darüber nachdenken können, um genauere, kontextbezogene Antworten zu liefern.
|
||||
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="Verwendung des Wissensblocks in Workflows" width={800} height={500} />
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="Verwendung des Knowledge-Blocks in Workflows" width={800} height={500} />
|
||||
|
||||
### Funktionen des Wissensblocks
|
||||
- **Semantische Suche**: Relevante Inhalte mit natürlichsprachlichen Abfragen finden
|
||||
- **Kontextintegration**: Automatisches Einbinden relevanter Chunks in Agenten-Prompts
|
||||
- **Dynamischer Abruf**: Suche erfolgt in Echtzeit während der Workflow-Ausführung
|
||||
- **Relevanzbewertung**: Ergebnisse nach semantischer Ähnlichkeit geordnet
|
||||
### Knowledge-Block-Funktionen
|
||||
- **Semantische Suche**: Relevante Inhalte mithilfe natürlichsprachlicher Abfragen finden
|
||||
- **Kontextintegration**: Relevante Chunks automatisch in Agenten-Prompts einbinden
|
||||
- **Dynamisches Abrufen**: Suche erfolgt in Echtzeit während der Workflow-Ausführung
|
||||
- **Relevanz-Bewertung**: Ergebnisse nach semantischer Ähnlichkeit sortiert
|
||||
|
||||
### Integrationsoptionen
|
||||
- **System-Prompts**: Kontext für Ihre KI-Agenten bereitstellen
|
||||
- **Dynamischer Kontext**: Suche und Einbindung relevanter Informationen während Gesprächen
|
||||
- **Dokumentübergreifende Suche**: Abfrage über Ihre gesamte Wissensdatenbank
|
||||
- **Gefilterte Suche**: Kombination mit Tags für präzisen Inhaltsabruf
|
||||
- **System-Prompts**: Stellen Sie Ihren KI-Agenten Kontext bereit
|
||||
- **Dynamischer Kontext**: Suchen und fügen Sie relevante Informationen während Konversationen hinzu
|
||||
- **Multi-Dokument-Suche**: Durchsuchen Sie Ihre gesamte Wissensdatenbank
|
||||
- **Gefilterte Suche**: Kombinieren Sie mit Tags für präzises Abrufen von Inhalten
|
||||
|
||||
## Vektorsuchtechnologie
|
||||
## Vektor-Suchtechnologie
|
||||
|
||||
Sim verwendet Vektorsuche, die von [pgvector](https://github.com/pgvector/pgvector) unterstützt wird, um die Bedeutung und den Kontext Ihrer Inhalte zu verstehen:
|
||||
|
||||
### Semantisches Verständnis
|
||||
- **Kontextuelle Suche**: Findet relevante Inhalte, auch wenn exakte Schlüsselwörter nicht übereinstimmen
|
||||
- **Konzeptbasierte Abfrage**: Versteht Beziehungen zwischen Ideen
|
||||
- **Konzeptbasiertes Abrufen**: Versteht Beziehungen zwischen Ideen
|
||||
- **Mehrsprachige Unterstützung**: Funktioniert über verschiedene Sprachen hinweg
|
||||
- **Synonymerkennung**: Findet verwandte Begriffe und Konzepte
|
||||
|
||||
### Suchfunktionen
|
||||
- **Natürlichsprachige Abfragen**: Stellen Sie Fragen in natürlicher Sprache
|
||||
- **Natürlichsprachige Abfragen**: Stellen Sie Fragen in einfachem Deutsch
|
||||
- **Ähnlichkeitssuche**: Finden Sie konzeptionell ähnliche Inhalte
|
||||
- **Hybridsuche**: Kombiniert Vektor- und traditionelle Schlüsselwortsuche
|
||||
- **Konfigurierbare Ergebnisse**: Steuern Sie die Anzahl und den Relevanz-Schwellenwert der Ergebnisse
|
||||
- **Hybride Suche**: Kombiniert Vektor- und traditionelle Schlüsselwortsuche
|
||||
- **Konfigurierbare Ergebnisse**: Steuern Sie die Anzahl und Relevanzschwelle der Ergebnisse
|
||||
|
||||
## Dokumentenverwaltung
|
||||
|
||||
### Organisationsfunktionen
|
||||
- **Massenupload**: Laden Sie mehrere Dateien gleichzeitig über die asynchrone API hoch
|
||||
- **Verarbeitungsstatus**: Echtzeit-Updates zum Dokumentenverarbeitungsprozess
|
||||
- **Suchen und Filtern**: Finden Sie Dokumente schnell in großen Sammlungen
|
||||
- **Massen-Upload**: Laden Sie mehrere Dateien gleichzeitig über die asynchrone API hoch
|
||||
- **Verarbeitungsstatus**: Echtzeit-Updates zur Dokumentenverarbeitung
|
||||
- **Suchen und filtern**: Finden Sie Dokumente schnell in großen Sammlungen
|
||||
- **Metadaten-Tracking**: Automatische Erfassung von Dateiinformationen und Verarbeitungsdetails
|
||||
|
||||
### Sicherheit und Datenschutz
|
||||
- **Sichere Speicherung**: Dokumente werden mit Sicherheit auf Unternehmensniveau gespeichert
|
||||
- **Zugriffskontrolle**: Workspace-basierte Berechtigungen
|
||||
- **Verarbeitungsisolierung**: Jeder Workspace hat eine isolierte Dokumentenverarbeitung
|
||||
- **Verarbeitungsisolierung**: Jeder Workspace hat isolierte Dokumentenverarbeitung
|
||||
- **Datenaufbewahrung**: Konfigurieren Sie Richtlinien zur Dokumentenaufbewahrung
|
||||
|
||||
## Erste Schritte
|
||||
|
||||
1. **Navigieren Sie zu Ihrer Wissensdatenbank**: Zugriff über Ihre Workspace-Seitenleiste
|
||||
2. **Dokumente hochladen**: Drag & Drop oder wählen Sie Dateien zum Hochladen aus
|
||||
3. **Verarbeitung überwachen**: Beobachten Sie, wie Dokumente verarbeitet und in Chunks aufgeteilt werden
|
||||
4. **Chunks erkunden**: Sehen und bearbeiten Sie die verarbeiteten Inhalte
|
||||
5. **Zu Workflows hinzufügen**: Verwenden Sie den Wissensblock, um ihn in Ihre KI-Agenten zu integrieren
|
||||
2. **Dokumente hochladen**: Ziehen und ablegen oder Dateien zum Hochladen auswählen
|
||||
3. **Verarbeitung überwachen**: Beobachten Sie, wie Dokumente verarbeitet und in Abschnitte unterteilt werden
|
||||
4. **Abschnitte erkunden**: Zeigen Sie die verarbeiteten Inhalte an und bearbeiten Sie sie
|
||||
5. **Zu Workflows hinzufügen**: Verwenden Sie den Knowledge-Block, um mit Ihren KI-Agenten zu integrieren
|
||||
|
||||
Die Wissensdatenbank verwandelt Ihre statischen Dokumente in eine intelligente, durchsuchbare Ressource, die Ihre KI-Workflows für fundiertere und kontextbezogenere Antworten nutzen können.
|
||||
Die Wissensdatenbank verwandelt Ihre statischen Dokumente in eine intelligente, durchsuchbare Ressource, die Ihre KI-Workflows für fundiertere und kontextbezogene Antworten nutzen können.
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Memory
|
||||
description: Konversationsverlauf speichern und abrufen
|
||||
description: Speicher hinzufügen
|
||||
---
|
||||
|
||||
import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
@@ -10,94 +10,91 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
color="#F64F9E"
|
||||
/>
|
||||
|
||||
## Übersicht
|
||||
## Nutzungsanweisungen
|
||||
|
||||
Der Memory-Block speichert den Konversationsverlauf für Agenten. Jede Erinnerung wird durch eine `conversationId` identifiziert, die Sie bereitstellen. Mehrere Agenten können denselben Speicher nutzen, indem sie dieselbe `conversationId` verwenden.
|
||||
|
||||
Der Speicher speichert nur Benutzer- und Assistentennachrichten. Systemnachrichten werden nicht gespeichert – sie werden im Agent-Block konfiguriert und zur Laufzeit vorangestellt.
|
||||
Integrieren Sie Memory in den Workflow. Kann Erinnerungen hinzufügen, abrufen, alle Erinnerungen abrufen und Erinnerungen löschen.
|
||||
|
||||
## Tools
|
||||
|
||||
### `memory_add`
|
||||
|
||||
Eine Nachricht zum Speicher hinzufügen. Erstellt einen neuen Speicher, wenn die `conversationId` nicht existiert, oder hängt an einen bestehenden Speicher an.
|
||||
Fügen Sie eine neue Erinnerung zur Datenbank hinzu oder hängen Sie sie an eine bestehende Erinnerung mit derselben ID an.
|
||||
|
||||
#### Eingabe
|
||||
|
||||
| Parameter | Typ | Erforderlich | Beschreibung |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | Ja | Eindeutige Kennung für die Konversation (z. B. `user-123`, `session-abc`) |
|
||||
| `role` | string | Ja | Nachrichtenrolle: `user` oder `assistant` |
|
||||
| `content` | string | Ja | Nachrichteninhalt |
|
||||
| `conversationId` | string | Nein | Konversationskennung \(z. B. user-123, session-abc\). Wenn bereits eine Erinnerung mit dieser conversationId existiert, wird die neue Nachricht an diese angehängt. |
|
||||
| `id` | string | Nein | Legacy-Parameter für Konversationskennung. Verwenden Sie stattdessen conversationId. Wird aus Gründen der Abwärtskompatibilität bereitgestellt. |
|
||||
| `role` | string | Ja | Rolle für Agent-Erinnerung \(user, assistant oder system\) |
|
||||
| `content` | string | Ja | Inhalt für Agent-Erinnerung |
|
||||
|
||||
#### Ausgabe
|
||||
|
||||
| Parameter | Typ | Beschreibung |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Ob der Vorgang erfolgreich war |
|
||||
| `memories` | array | Aktualisiertes Speicher-Array |
|
||||
| `error` | string | Fehlermeldung, falls fehlgeschlagen |
|
||||
| `success` | boolean | Ob die Erinnerung erfolgreich hinzugefügt wurde |
|
||||
| `memories` | array | Array von Erinnerungsobjekten einschließlich der neuen oder aktualisierten Erinnerung |
|
||||
| `error` | string | Fehlermeldung, falls der Vorgang fehlgeschlagen ist |
|
||||
|
||||
### `memory_get`
|
||||
|
||||
Speicher nach Konversations-ID abrufen.
|
||||
Erinnerung nach conversationId abrufen. Gibt übereinstimmende Erinnerungen zurück.
|
||||
|
||||
#### Eingabe
|
||||
|
||||
| Parameter | Typ | Erforderlich | Beschreibung |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | Ja | Konversationskennung |
|
||||
| `conversationId` | string | Nein | Konversationskennung \(z. B. user-123, session-abc\). Gibt Erinnerungen für diese Konversation zurück. |
|
||||
| `id` | string | Nein | Legacy-Parameter für Konversationskennung. Verwenden Sie stattdessen conversationId. Wird aus Gründen der Abwärtskompatibilität bereitgestellt. |
|
||||
|
||||
#### Ausgabe
|
||||
|
||||
| Parameter | Typ | Beschreibung |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Ob der Vorgang erfolgreich war |
|
||||
| `memories` | array | Array von Nachrichten mit `role` und `content` |
|
||||
| `success` | boolean | Ob der Speicher erfolgreich abgerufen wurde |
|
||||
| `memories` | array | Array von Speicherobjekten mit conversationId- und data-Feldern |
|
||||
| `message` | string | Erfolgs- oder Fehlermeldung |
|
||||
| `error` | string | Fehlermeldung, falls fehlgeschlagen |
|
||||
|
||||
### `memory_get_all`
|
||||
|
||||
Alle Erinnerungen für den aktuellen Workspace abrufen.
|
||||
|
||||
#### Ausgabe
|
||||
|
||||
| Parameter | Typ | Beschreibung |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Ob der Vorgang erfolgreich war |
|
||||
| `memories` | array | Alle Erinnerungsobjekte mit `conversationId` und `data` Feldern |
|
||||
| `error` | string | Fehlermeldung, falls fehlgeschlagen |
|
||||
|
||||
### `memory_delete`
|
||||
|
||||
Erinnerung nach Konversations-ID löschen.
|
||||
Alle Speicher aus der Datenbank abrufen
|
||||
|
||||
#### Eingabe
|
||||
|
||||
| Parameter | Typ | Erforderlich | Beschreibung |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | Ja | Konversationskennung zum Löschen |
|
||||
|
||||
#### Ausgabe
|
||||
|
||||
| Parameter | Typ | Beschreibung |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Ob der Vorgang erfolgreich war |
|
||||
| `message` | string | Bestätigungsnachricht |
|
||||
| `success` | boolean | Ob alle Speicher erfolgreich abgerufen wurden |
|
||||
| `memories` | array | Array aller Speicherobjekte mit key-, conversationId- und data-Feldern |
|
||||
| `message` | string | Erfolgs- oder Fehlermeldung |
|
||||
| `error` | string | Fehlermeldung, falls fehlgeschlagen |
|
||||
|
||||
## Agent-Erinnerungstypen
|
||||
### `memory_delete`
|
||||
|
||||
Bei der Verwendung von Erinnerungen mit einem Agent-Block können Sie konfigurieren, wie der Konversationsverlauf verwaltet wird:
|
||||
Speicher nach conversationId löschen.
|
||||
|
||||
| Typ | Beschreibung |
|
||||
| ---- | ----------- |
|
||||
| **Vollständige Konversation** | Speichert alle Nachrichten, begrenzt durch das Kontextfenster des Modells (verwendet 90%, um Platz für die Antwort zu lassen) |
|
||||
| **Gleitendes Fenster (Nachrichten)** | Behält die letzten N Nachrichten (Standard: 10) |
|
||||
| **Gleitendes Fenster (Tokens)** | Behält Nachrichten, die in ein Token-Limit passen (Standard: 4000) |
|
||||
#### Eingabe
|
||||
|
||||
| Parameter | Typ | Erforderlich | Beschreibung |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | Nein | Konversationskennung (z. B. user-123, session-abc). Löscht alle Speicher für diese Konversation. |
|
||||
| `id` | string | Nein | Legacy-Parameter für Konversationskennung. Verwenden Sie stattdessen conversationId. Wird aus Gründen der Abwärtskompatibilität bereitgestellt. |
|
||||
|
||||
#### Ausgabe
|
||||
|
||||
| Parameter | Typ | Beschreibung |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Ob der Speicher erfolgreich gelöscht wurde |
|
||||
| `message` | string | Erfolgs- oder Fehlermeldung |
|
||||
| `error` | string | Fehlermeldung, falls fehlgeschlagen |
|
||||
|
||||
## Hinweise
|
||||
|
||||
- Erinnerungen sind pro Workspace begrenzt – Workflows im selben Workspace teilen sich den Erinnerungsspeicher
|
||||
- Verwenden Sie eindeutige `conversationId` Werte, um Konversationen getrennt zu halten (z.B. Session-IDs, Benutzer-IDs oder UUIDs)
|
||||
- Systemnachrichten gehören in die Agent-Block-Konfiguration, nicht in die Erinnerung
|
||||
- Kategorie: `blocks`
|
||||
- Typ: `memory`
|
||||
|
||||
@@ -35,81 +35,87 @@ Una vez que tus documentos están procesados, puedes ver y editar los fragmentos
|
||||
<Image src="/static/knowledgebase/knowledgebase.png" alt="Vista de fragmentos de documentos mostrando contenido procesado" width={800} height={500} />
|
||||
|
||||
### Configuración de fragmentos
|
||||
- **Tamaño predeterminado del fragmento**: 1.024 caracteres
|
||||
- **Rango configurable**: 100-4.000 caracteres por fragmento
|
||||
- **Superposición inteligente**: 200 caracteres por defecto para preservar el contexto
|
||||
- **División jerárquica**: Respeta la estructura del documento (secciones, párrafos, oraciones)
|
||||
|
||||
Al crear una base de conocimiento, puedes configurar cómo se dividen los documentos en fragmentos:
|
||||
|
||||
| Configuración | Unidad | Predeterminado | Rango | Descripción |
|
||||
|---------|------|---------|-------|-------------|
|
||||
| **Tamaño máximo de fragmento** | tokens | 1.024 | 100-4.000 | Tamaño máximo de cada fragmento (1 token ≈ 4 caracteres) |
|
||||
| **Tamaño mínimo de fragmento** | caracteres | 1 | 1-2.000 | Tamaño mínimo de fragmento para evitar fragmentos diminutos |
|
||||
| **Superposición** | caracteres | 200 | 0-500 | Superposición de contexto entre fragmentos consecutivos |
|
||||
|
||||
- **División jerárquica**: respeta la estructura del documento (secciones, párrafos, oraciones)
|
||||
|
||||
### Capacidades de edición
|
||||
- **Editar contenido de fragmentos**: Modificar el contenido de texto de fragmentos individuales
|
||||
- **Ajustar límites de fragmentos**: Fusionar o dividir fragmentos según sea necesario
|
||||
- **Añadir metadatos**: Mejorar fragmentos con contexto adicional
|
||||
- **Operaciones masivas**: Gestionar múltiples fragmentos de manera eficiente
|
||||
- **Editar contenido de fragmentos**: modifica el contenido de texto de fragmentos individuales
|
||||
- **Ajustar límites de fragmentos**: combina o divide fragmentos según sea necesario
|
||||
- **Añadir metadatos**: mejora los fragmentos con contexto adicional
|
||||
- **Operaciones masivas**: gestiona múltiples fragmentos de manera eficiente
|
||||
|
||||
## Procesamiento avanzado de PDF
|
||||
|
||||
Para documentos PDF, Sim ofrece capacidades de procesamiento mejoradas:
|
||||
|
||||
### Soporte OCR
|
||||
### Compatibilidad con OCR
|
||||
Cuando se configura con Azure o [Mistral OCR](https://docs.mistral.ai/ocr/):
|
||||
- **Procesamiento de documentos escaneados**: Extraer texto de PDFs basados en imágenes
|
||||
- **Manejo de contenido mixto**: Procesar PDFs con texto e imágenes
|
||||
- **Alta precisión**: Modelos avanzados de IA aseguran una extracción precisa del texto
|
||||
- **Procesamiento de documentos escaneados**: extrae texto de PDF basados en imágenes
|
||||
- **Manejo de contenido mixto**: procesa PDF con texto e imágenes
|
||||
- **Alta precisión**: los modelos de IA avanzados garantizan una extracción de texto precisa
|
||||
|
||||
## Uso del bloque de conocimiento en flujos de trabajo
|
||||
|
||||
Una vez que tus documentos son procesados, puedes utilizarlos en tus flujos de trabajo de IA a través del bloque de Conocimiento. Esto permite la Generación Aumentada por Recuperación (RAG), permitiendo a tus agentes de IA acceder y razonar sobre el contenido de tus documentos para proporcionar respuestas más precisas y contextuales.
|
||||
Una vez que tus documentos estén procesados, puedes usarlos en tus flujos de trabajo de IA a través del bloque de conocimiento. Esto habilita la generación aumentada por recuperación (RAG), permitiendo que tus agentes de IA accedan y razonen sobre el contenido de tus documentos para proporcionar respuestas más precisas y contextuales.
|
||||
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="Uso del bloque de conocimiento en flujos de trabajo" width={800} height={500} />
|
||||
|
||||
### Características del bloque de conocimiento
|
||||
- **Búsqueda semántica**: Encontrar contenido relevante usando consultas en lenguaje natural
|
||||
- **Integración de contexto**: Incluir automáticamente fragmentos relevantes en los prompts del agente
|
||||
- **Recuperación dinámica**: La búsqueda ocurre en tiempo real durante la ejecución del flujo de trabajo
|
||||
- **Puntuación de relevancia**: Resultados clasificados por similitud semántica
|
||||
- **Búsqueda semántica**: encuentra contenido relevante usando consultas en lenguaje natural
|
||||
- **Integración de contexto**: incluye automáticamente fragmentos relevantes en las indicaciones del agente
|
||||
- **Recuperación dinámica**: la búsqueda ocurre en tiempo real durante la ejecución del flujo de trabajo
|
||||
- **Puntuación de relevancia**: resultados clasificados por similitud semántica
|
||||
|
||||
### Opciones de integración
|
||||
- **Prompts del sistema**: Proporcionar contexto a tus agentes de IA
|
||||
- **Contexto dinámico**: Buscar e incluir información relevante durante las conversaciones
|
||||
- **Búsqueda multi-documento**: Consultar a través de toda tu base de conocimiento
|
||||
- **Búsqueda filtrada**: Combinar con etiquetas para una recuperación precisa de contenido
|
||||
- **Prompts del sistema**: proporciona contexto a tus agentes de IA
|
||||
- **Contexto dinámico**: busca e incluye información relevante durante las conversaciones
|
||||
- **Búsqueda multidocumento**: consulta en toda tu base de conocimiento
|
||||
- **Búsqueda filtrada**: combina con etiquetas para una recuperación precisa de contenido
|
||||
|
||||
## Tecnología de búsqueda vectorial
|
||||
|
||||
Sim utiliza búsqueda vectorial impulsada por [pgvector](https://github.com/pgvector/pgvector) para entender el significado y contexto de tu contenido:
|
||||
Sim utiliza búsqueda vectorial impulsada por [pgvector](https://github.com/pgvector/pgvector) para comprender el significado y contexto de tu contenido:
|
||||
|
||||
### Comprensión semántica
|
||||
- **Búsqueda contextual**: Encuentra contenido relevante incluso cuando las palabras clave exactas no coinciden
|
||||
- **Recuperación basada en conceptos**: Comprende las relaciones entre ideas
|
||||
- **Soporte multilingüe**: Funciona en diferentes idiomas
|
||||
- **Reconocimiento de sinónimos**: Encuentra términos y conceptos relacionados
|
||||
- **Búsqueda contextual**: encuentra contenido relevante incluso cuando las palabras clave exactas no coinciden
|
||||
- **Recuperación basada en conceptos**: comprende las relaciones entre ideas
|
||||
- **Soporte multiidioma**: funciona en diferentes idiomas
|
||||
- **Reconocimiento de sinónimos**: encuentra términos y conceptos relacionados
|
||||
|
||||
### Capacidades de búsqueda
|
||||
- **Consultas en lenguaje natural**: Haz preguntas en español simple
|
||||
- **Búsqueda por similitud**: Encuentra contenido conceptualmente similar
|
||||
- **Búsqueda híbrida**: Combina búsqueda vectorial y tradicional por palabras clave
|
||||
- **Resultados configurables**: Controla el número y umbral de relevancia de los resultados
|
||||
- **Consultas en lenguaje natural**: haz preguntas en lenguaje cotidiano
|
||||
- **Búsqueda por similitud**: encuentra contenido conceptualmente similar
|
||||
- **Búsqueda híbrida**: combina búsqueda vectorial y búsqueda tradicional por palabras clave
|
||||
- **Resultados configurables**: controla el número y el umbral de relevancia de los resultados
|
||||
|
||||
## Gestión de documentos
|
||||
|
||||
### Características de organización
|
||||
- **Carga masiva**: Sube múltiples archivos a la vez mediante la API asíncrona
|
||||
- **Estado de procesamiento**: Actualizaciones en tiempo real sobre el procesamiento de documentos
|
||||
- **Búsqueda y filtrado**: Encuentra documentos rápidamente en grandes colecciones
|
||||
- **Seguimiento de metadatos**: Captura automática de información de archivos y detalles de procesamiento
|
||||
### Funciones de organización
|
||||
- **Carga masiva**: sube múltiples archivos a la vez mediante la API asíncrona
|
||||
- **Estado de procesamiento**: actualizaciones en tiempo real sobre el procesamiento de documentos
|
||||
- **Búsqueda y filtrado**: encuentra documentos rápidamente en colecciones grandes
|
||||
- **Seguimiento de metadatos**: captura automática de información de archivos y detalles de procesamiento
|
||||
|
||||
### Seguridad y privacidad
|
||||
- **Almacenamiento seguro**: Documentos almacenados con seguridad de nivel empresarial
|
||||
- **Control de acceso**: Permisos basados en espacios de trabajo
|
||||
- **Aislamiento de procesamiento**: Cada espacio de trabajo tiene procesamiento de documentos aislado
|
||||
- **Retención de datos**: Configura políticas de retención de documentos
|
||||
- **Almacenamiento seguro**: documentos almacenados con seguridad de nivel empresarial
|
||||
- **Control de acceso**: permisos basados en el espacio de trabajo
|
||||
- **Aislamiento de procesamiento**: cada espacio de trabajo tiene procesamiento de documentos aislado
|
||||
- **Retención de datos**: configura políticas de retención de documentos
|
||||
|
||||
## Primeros pasos
|
||||
|
||||
1. **Navega a tu base de conocimiento**: Accede desde la barra lateral de tu espacio de trabajo
|
||||
2. **Sube documentos**: Arrastra y suelta o selecciona archivos para subir
|
||||
3. **Monitorea el procesamiento**: Observa cómo se procesan y dividen los documentos
|
||||
4. **Explora fragmentos**: Visualiza y edita el contenido procesado
|
||||
5. **Añade a flujos de trabajo**: Usa el bloque de Conocimiento para integrarlo con tus agentes de IA
|
||||
1. **Navega a tu base de conocimiento**: accede desde la barra lateral de tu espacio de trabajo
|
||||
2. **Sube documentos**: arrastra y suelta o selecciona archivos para subir
|
||||
3. **Monitorea el procesamiento**: observa cómo se procesan y fragmentan los documentos
|
||||
4. **Explora fragmentos**: visualiza y edita el contenido procesado
|
||||
5. **Añade a flujos de trabajo**: utiliza el bloque Knowledge para integrar con tus agentes de IA
|
||||
|
||||
La base de conocimiento transforma tus documentos estáticos en un recurso inteligente y consultable que tus flujos de trabajo de IA pueden aprovechar para obtener respuestas más informadas y contextuales.
|
||||
La base de conocimientos transforma tus documentos estáticos en un recurso inteligente y consultable que tus flujos de trabajo de IA pueden aprovechar para obtener respuestas más informadas y contextuales.
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Memoria
|
||||
description: Almacena y recupera el historial de conversaciones
|
||||
description: Añadir almacén de memoria
|
||||
---
|
||||
|
||||
import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
@@ -10,94 +10,91 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
color="#F64F9E"
|
||||
/>
|
||||
|
||||
## Descripción general
|
||||
## Instrucciones de uso
|
||||
|
||||
El bloque Memory almacena el historial de conversaciones para agentes. Cada memoria se identifica mediante un `conversationId` que proporcionas. Múltiples agentes pueden compartir la misma memoria usando el mismo `conversationId`.
|
||||
|
||||
Memory almacena solo mensajes de usuario y asistente. Los mensajes del sistema no se almacenan, se configuran en el bloque Agent y se añaden como prefijo en tiempo de ejecución.
|
||||
Integra memoria en el flujo de trabajo. Puede añadir, obtener una memoria, obtener todas las memorias y eliminar memorias.
|
||||
|
||||
## Herramientas
|
||||
|
||||
### `memory_add`
|
||||
|
||||
Añade un mensaje a la memoria. Crea una nueva memoria si el `conversationId` no existe, o añade al final de la memoria existente.
|
||||
Añadir una nueva memoria a la base de datos o agregar a una memoria existente con el mismo ID.
|
||||
|
||||
#### Entrada
|
||||
|
||||
| Parámetro | Tipo | Obligatorio | Descripción |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | string | Sí | Identificador único para la conversación (ej., `user-123`, `session-abc`) |
|
||||
| `role` | string | Sí | Rol del mensaje: `user` o `assistant` |
|
||||
| `content` | string | Sí | Contenido del mensaje |
|
||||
| `conversationId` | string | No | Identificador de conversación \(ej., user-123, session-abc\). Si ya existe una memoria con este conversationId, el nuevo mensaje se agregará a ella. |
|
||||
| `id` | string | No | Parámetro heredado para identificador de conversación. Usa conversationId en su lugar. Proporcionado para compatibilidad con versiones anteriores. |
|
||||
| `role` | string | Sí | Rol para la memoria del agente \(user, assistant o system\) |
|
||||
| `content` | string | Sí | Contenido para la memoria del agente |
|
||||
|
||||
#### Salida
|
||||
|
||||
| Parámetro | Tipo | Descripción |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Si la operación tuvo éxito |
|
||||
| `memories` | array | Array de memoria actualizado |
|
||||
| `error` | string | Mensaje de error si falló |
|
||||
| `success` | boolean | Si la memoria se añadió correctamente |
|
||||
| `memories` | array | Array de objetos de memoria incluyendo la memoria nueva o actualizada |
|
||||
| `error` | string | Mensaje de error si la operación falló |
|
||||
|
||||
### `memory_get`
|
||||
|
||||
Recupera la memoria por ID de conversación.
|
||||
Recuperar memoria por conversationId. Devuelve las memorias coincidentes.
|
||||
|
||||
#### Entrada
|
||||
|
||||
| Parámetro | Tipo | Obligatorio | Descripción |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | string | Sí | Identificador de conversación |
|
||||
| `conversationId` | string | No | Identificador de conversación \(ej., user-123, session-abc\). Devuelve las memorias para esta conversación. |
|
||||
| `id` | string | No | Parámetro heredado para identificador de conversación. Usa conversationId en su lugar. Proporcionado para compatibilidad con versiones anteriores. |
|
||||
|
||||
#### Salida
|
||||
|
||||
| Parámetro | Tipo | Descripción |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Si la operación tuvo éxito |
|
||||
| `memories` | array | Array de mensajes con `role` y `content` |
|
||||
| `error` | string | Mensaje de error si falló |
|
||||
| `success` | boolean | Si la memoria se recuperó exitosamente |
|
||||
| `memories` | array | Array de objetos de memoria con campos conversationId y data |
|
||||
| `message` | string | Mensaje de éxito o error |
|
||||
| `error` | string | Mensaje de error si la operación falló |
|
||||
|
||||
### `memory_get_all`
|
||||
|
||||
Recuperar todas las memorias del espacio de trabajo actual.
|
||||
Recupera todas las memorias de la base de datos
|
||||
|
||||
#### Entrada
|
||||
|
||||
| Parámetro | Tipo | Obligatorio | Descripción |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
|
||||
#### Salida
|
||||
|
||||
| Parámetro | Tipo | Descripción |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Indica si la operación se realizó correctamente |
|
||||
| `memories` | array | Todos los objetos de memoria con campos `conversationId` y `data` |
|
||||
| `success` | boolean | Si todas las memorias se recuperaron exitosamente |
|
||||
| `memories` | array | Array de todos los objetos de memoria con campos key, conversationId y data |
|
||||
| `message` | string | Mensaje de éxito o error |
|
||||
| `error` | string | Mensaje de error si la operación falló |
|
||||
|
||||
### `memory_delete`
|
||||
|
||||
Eliminar memoria por ID de conversación.
|
||||
Elimina memorias por conversationId.
|
||||
|
||||
#### Entrada
|
||||
|
||||
| Parámetro | Tipo | Obligatorio | Descripción |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | string | Sí | Identificador de conversación a eliminar |
|
||||
| `conversationId` | string | No | Identificador de conversación (ej., user-123, session-abc). Elimina todas las memorias de esta conversación. |
|
||||
| `id` | string | No | Parámetro heredado para identificador de conversación. Usa conversationId en su lugar. Proporcionado para compatibilidad con versiones anteriores. |
|
||||
|
||||
#### Salida
|
||||
|
||||
| Parámetro | Tipo | Descripción |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Indica si la operación se realizó correctamente |
|
||||
| `message` | string | Mensaje de confirmación |
|
||||
| `success` | boolean | Si la memoria se eliminó exitosamente |
|
||||
| `message` | string | Mensaje de éxito o error |
|
||||
| `error` | string | Mensaje de error si la operación falló |
|
||||
|
||||
## Tipos de memoria del agente
|
||||
|
||||
Al usar memoria con un bloque de agente, puedes configurar cómo se gestiona el historial de conversación:
|
||||
|
||||
| Tipo | Descripción |
|
||||
| ---- | ----------- |
|
||||
| **Conversación completa** | Almacena todos los mensajes, limitado por la ventana de contexto del modelo (usa el 90% para dejar espacio para la respuesta) |
|
||||
| **Ventana deslizante (mensajes)** | Mantiene los últimos N mensajes (predeterminado: 10) |
|
||||
| **Ventana deslizante (tokens)** | Mantiene los mensajes que caben dentro de un límite de tokens (predeterminado: 4000) |
|
||||
|
||||
## Notas
|
||||
|
||||
- La memoria está limitada por espacio de trabajo: los flujos de trabajo en el mismo espacio de trabajo comparten el almacén de memoria
|
||||
- Usa valores únicos de `conversationId` para mantener las conversaciones separadas (p. ej., IDs de sesión, IDs de usuario o UUIDs)
|
||||
- Los mensajes del sistema pertenecen a la configuración del bloque de agente, no a la memoria
|
||||
- Categoría: `blocks`
|
||||
- Tipo: `memory`
|
||||
|
||||
@@ -35,53 +35,59 @@ Une fois vos documents traités, vous pouvez visualiser et modifier les segments
|
||||
<Image src="/static/knowledgebase/knowledgebase.png" alt="Vue des segments de document montrant le contenu traité" width={800} height={500} />
|
||||
|
||||
### Configuration des fragments
|
||||
- **Taille par défaut des fragments** : 1 024 caractères
|
||||
- **Plage configurable** : 100 à 4 000 caractères par fragment
|
||||
- **Chevauchement intelligent** : 200 caractères par défaut pour préserver le contexte
|
||||
- **Découpage hiérarchique** : respecte la structure du document (sections, paragraphes, phrases)
|
||||
|
||||
Lors de la création d'une base de connaissances, vous pouvez configurer la façon dont les documents sont divisés en fragments :
|
||||
|
||||
| Paramètre | Unité | Par défaut | Plage | Description |
|
||||
|---------|------|---------|-------|-------------|
|
||||
| **Taille max. du fragment** | jetons | 1 024 | 100-4 000 | Taille maximale de chaque fragment (1 jeton ≈ 4 caractères) |
|
||||
| **Taille min. du fragment** | caractères | 1 | 1-2 000 | Taille minimale du fragment pour éviter les fragments minuscules |
|
||||
| **Chevauchement** | caractères | 200 | 0-500 | Chevauchement de contexte entre fragments consécutifs |
|
||||
|
||||
- **Division hiérarchique** : respecte la structure du document (sections, paragraphes, phrases)
|
||||
|
||||
### Capacités d'édition
|
||||
- **Modifier le contenu des fragments** : modifier le contenu textuel des fragments individuels
|
||||
- **Ajuster les limites des fragments** : fusionner ou diviser les fragments selon les besoins
|
||||
- **Ajouter des métadonnées** : enrichir les fragments avec du contexte supplémentaire
|
||||
- **Opérations en masse** : gérer efficacement plusieurs fragments
|
||||
- **Modifier le contenu du fragment** : modifiez le contenu textuel des fragments individuels
|
||||
- **Ajuster les limites du fragment** : fusionnez ou divisez les fragments selon les besoins
|
||||
- **Ajouter des métadonnées** : enrichissez les fragments avec du contexte supplémentaire
|
||||
- **Opérations en masse** : gérez plusieurs fragments efficacement
|
||||
|
||||
## Traitement avancé des PDF
|
||||
|
||||
Pour les documents PDF, Sim offre des capacités de traitement améliorées :
|
||||
|
||||
### Support OCR
|
||||
Lorsque configuré avec Azure ou [Mistral OCR](https://docs.mistral.ai/ocr/) :
|
||||
- **Traitement de documents numérisés** : extraction de texte à partir de PDF basés sur des images
|
||||
- **Gestion de contenu mixte** : traitement des PDF contenant à la fois du texte et des images
|
||||
- **Haute précision** : les modèles d'IA avancés assurent une extraction précise du texte
|
||||
### Prise en charge de l'OCR
|
||||
Lorsqu'il est configuré avec Azure ou [Mistral OCR](https://docs.mistral.ai/ocr/) :
|
||||
- **Traitement de documents numérisés** : extrayez le texte des PDF basés sur des images
|
||||
- **Gestion de contenu mixte** : traitez les PDF contenant à la fois du texte et des images
|
||||
- **Haute précision** : les modèles d'IA avancés garantissent une extraction de texte précise
|
||||
|
||||
## Utilisation du bloc de connaissances dans les flux de travail
|
||||
## Utilisation du bloc de connaissances dans les workflows
|
||||
|
||||
Une fois vos documents traités, vous pouvez les utiliser dans vos flux de travail d'IA grâce au bloc de connaissances. Cela permet la génération augmentée par récupération (RAG), permettant à vos agents IA d'accéder et de raisonner sur le contenu de vos documents pour fournir des réponses plus précises et contextuelles.
|
||||
Une fois vos documents traités, vous pouvez les utiliser dans vos workflows d'IA via le bloc de connaissances. Cela active la génération augmentée par récupération (RAG), permettant à vos agents d'IA d'accéder à votre contenu documentaire et de raisonner dessus pour fournir des réponses plus précises et contextuelles.
|
||||
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="Utilisation du bloc de connaissances dans les flux de travail" width={800} height={500} />
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="Utilisation du bloc de connaissances dans les workflows" width={800} height={500} />
|
||||
|
||||
### Fonctionnalités du bloc de connaissances
|
||||
- **Recherche sémantique** : trouver du contenu pertinent à l'aide de requêtes en langage naturel
|
||||
- **Intégration du contexte** : inclure automatiquement les fragments pertinents dans les prompts des agents
|
||||
- **Récupération dynamique** : la recherche s'effectue en temps réel pendant l'exécution du flux de travail
|
||||
- **Évaluation de la pertinence** : résultats classés par similarité sémantique
|
||||
- **Recherche sémantique** : trouvez du contenu pertinent à l'aide de requêtes en langage naturel
|
||||
- **Intégration contextuelle** : incluez automatiquement les fragments pertinents dans les prompts de l'agent
|
||||
- **Récupération dynamique** : la recherche s'effectue en temps réel pendant l'exécution du workflow
|
||||
- **Score de pertinence** : résultats classés par similarité sémantique
|
||||
|
||||
### Options d'intégration
|
||||
- **Prompts système** : fournir du contexte à vos agents IA
|
||||
- **Contexte dynamique** : rechercher et inclure des informations pertinentes pendant les conversations
|
||||
- **Recherche multi-documents** : interroger l'ensemble de votre base de connaissances
|
||||
- **Recherche filtrée** : combiner avec des tags pour une récupération précise du contenu
|
||||
- **Prompts système** : fournissez du contexte à vos agents IA
|
||||
- **Contexte dynamique** : recherchez et incluez des informations pertinentes pendant les conversations
|
||||
- **Recherche multi-documents** : interrogez l'ensemble de votre base de connaissances
|
||||
- **Recherche filtrée** : combinez avec des tags pour une récupération de contenu précise
|
||||
|
||||
## Technologie de recherche vectorielle
|
||||
|
||||
Sim utilise la recherche vectorielle alimentée par [pgvector](https://github.com/pgvector/pgvector) pour comprendre le sens et le contexte de votre contenu :
|
||||
Sim utilise la recherche vectorielle propulsée par [pgvector](https://github.com/pgvector/pgvector) pour comprendre le sens et le contexte de votre contenu :
|
||||
|
||||
### Compréhension sémantique
|
||||
- **Recherche contextuelle** : trouve du contenu pertinent même lorsque les mots-clés exacts ne correspondent pas
|
||||
- **Récupération basée sur les concepts** : comprend les relations entre les idées
|
||||
- **Prise en charge multilingue** : fonctionne dans différentes langues
|
||||
- **Support multilingue** : fonctionne dans différentes langues
|
||||
- **Reconnaissance des synonymes** : trouve des termes et concepts associés
|
||||
|
||||
### Capacités de recherche
|
||||
@@ -90,26 +96,26 @@ Sim utilise la recherche vectorielle alimentée par [pgvector](https://github.co
|
||||
- **Recherche hybride** : combine la recherche vectorielle et la recherche traditionnelle par mots-clés
|
||||
- **Résultats configurables** : contrôlez le nombre et le seuil de pertinence des résultats
|
||||
|
||||
## Gestion documentaire
|
||||
## Gestion des documents
|
||||
|
||||
### Fonctionnalités d'organisation
|
||||
- **Téléchargement en masse** : téléchargez plusieurs fichiers à la fois via l'API asynchrone
|
||||
- **État de traitement** : mises à jour en temps réel sur le traitement des documents
|
||||
- **Statut de traitement** : mises à jour en temps réel sur le traitement des documents
|
||||
- **Recherche et filtrage** : trouvez rapidement des documents dans de grandes collections
|
||||
- **Suivi des métadonnées** : capture automatique des informations de fichier et des détails de traitement
|
||||
|
||||
### Sécurité et confidentialité
|
||||
- **Stockage sécurisé** : documents stockés avec une sécurité de niveau entreprise
|
||||
- **Contrôle d'accès** : autorisations basées sur l'espace de travail
|
||||
- **Contrôle d'accès** : permissions basées sur l'espace de travail
|
||||
- **Isolation du traitement** : chaque espace de travail dispose d'un traitement de documents isolé
|
||||
- **Conservation des données** : configurez les politiques de conservation des documents
|
||||
|
||||
## Premiers pas
|
||||
|
||||
1. **Accédez à votre base de connaissances** : accessible depuis la barre latérale de votre espace de travail
|
||||
1. **Accédez à votre base de connaissances** : accès depuis la barre latérale de votre espace de travail
|
||||
2. **Téléchargez des documents** : glissez-déposez ou sélectionnez des fichiers à télécharger
|
||||
3. **Surveillez le traitement** : observez le traitement et le découpage des documents
|
||||
4. **Explorez les fragments** : visualisez et modifiez le contenu traité
|
||||
5. **Ajoutez aux flux de travail** : utilisez le bloc Connaissances pour l'intégrer à vos agents IA
|
||||
3. **Surveillez le traitement** : observez le traitement et la segmentation des documents
|
||||
4. **Explorez les segments** : visualisez et modifiez le contenu traité
|
||||
5. **Ajoutez aux workflows** : utilisez le bloc Knowledge pour intégrer avec vos agents IA
|
||||
|
||||
La base de connaissances transforme vos documents statiques en une ressource intelligente et consultable que vos flux de travail IA peuvent exploiter pour des réponses plus informées et contextuelles.
|
||||
La base de connaissances transforme vos documents statiques en une ressource intelligente et consultable que vos workflows IA peuvent exploiter pour des réponses plus éclairées et contextuelles.
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Mémoire
|
||||
description: Stocker et récupérer l'historique des conversations
|
||||
description: Ajouter un magasin de mémoire
|
||||
---
|
||||
|
||||
import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
@@ -10,94 +10,91 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
color="#F64F9E"
|
||||
/>
|
||||
|
||||
## Vue d'ensemble
|
||||
## Instructions d'utilisation
|
||||
|
||||
Le bloc Memory stocke l'historique des conversations pour les agents. Chaque mémoire est identifiée par un `conversationId` que vous fournissez. Plusieurs agents peuvent partager la même mémoire en utilisant le même `conversationId`.
|
||||
|
||||
Memory stocke uniquement les messages utilisateur et assistant. Les messages système ne sont pas stockés — ils sont configurés dans le bloc Agent et préfixés à l'exécution.
|
||||
Intégrer la mémoire dans le flux de travail. Permet d'ajouter, d'obtenir une mémoire, d'obtenir toutes les mémoires et de supprimer des mémoires.
|
||||
|
||||
## Outils
|
||||
|
||||
### `memory_add`
|
||||
|
||||
Ajouter un message à la mémoire. Crée une nouvelle mémoire si le `conversationId` n'existe pas, ou ajoute à la mémoire existante.
|
||||
Ajouter une nouvelle mémoire à la base de données ou ajouter à une mémoire existante avec le même ID.
|
||||
|
||||
#### Entrée
|
||||
|
||||
| Paramètre | Type | Obligatoire | Description |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | chaîne | Oui | Identifiant unique pour la conversation (par ex., `user-123`, `session-abc`) |
|
||||
| `role` | chaîne | Oui | Rôle du message : `user` ou `assistant` |
|
||||
| `content` | chaîne | Oui | Contenu du message |
|
||||
| `conversationId` | chaîne | Non | Identifiant de conversation \(par ex., user-123, session-abc\). Si une mémoire avec cet identifiant existe déjà, le nouveau message y sera ajouté. |
|
||||
| `id` | chaîne | Non | Paramètre hérité pour l'identifiant de conversation. Utilisez conversationId à la place. Fourni pour la rétrocompatibilité. |
|
||||
| `role` | chaîne | Oui | Rôle pour la mémoire de l'agent \(user, assistant ou system\) |
|
||||
| `content` | chaîne | Oui | Contenu pour la mémoire de l'agent |
|
||||
|
||||
#### Sortie
|
||||
|
||||
| Paramètre | Type | Description |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | booléen | Indique si l'opération a réussi |
|
||||
| `memories` | tableau | Tableau de mémoire mis à jour |
|
||||
| `error` | chaîne | Message d'erreur en cas d'échec |
|
||||
| `success` | booléen | Indique si la mémoire a été ajoutée avec succès |
|
||||
| `memories` | tableau | Tableau d'objets mémoire incluant la mémoire nouvelle ou mise à jour |
|
||||
| `error` | chaîne | Message d'erreur en cas d'échec de l'opération |
|
||||
|
||||
### `memory_get`
|
||||
|
||||
Récupérer la mémoire par identifiant de conversation.
|
||||
Récupérer la mémoire par conversationId. Renvoie les mémoires correspondantes.
|
||||
|
||||
#### Entrée
|
||||
|
||||
| Paramètre | Type | Obligatoire | Description |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | chaîne | Oui | Identifiant de conversation |
|
||||
| `conversationId` | chaîne | Non | Identifiant de conversation \(par ex., user-123, session-abc\). Renvoie les mémoires pour cette conversation. |
|
||||
| `id` | chaîne | Non | Paramètre hérité pour l'identifiant de conversation. Utilisez conversationId à la place. Fourni pour la rétrocompatibilité. |
|
||||
|
||||
#### Sortie
|
||||
|
||||
| Paramètre | Type | Description |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | booléen | Indique si l'opération a réussi |
|
||||
| `memories` | tableau | Tableau de messages avec `role` et `content` |
|
||||
| `success` | booléen | Indique si la mémoire a été récupérée avec succès |
|
||||
| `memories` | tableau | Tableau d'objets mémoire avec les champs conversationId et data |
|
||||
| `message` | chaîne | Message de succès ou d'erreur |
|
||||
| `error` | chaîne | Message d'erreur en cas d'échec |
|
||||
|
||||
### `memory_get_all`
|
||||
|
||||
Récupérer toutes les mémoires pour l'espace de travail actuel.
|
||||
|
||||
#### Sortie
|
||||
|
||||
| Paramètre | Type | Description |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Indique si l'opération a réussi |
|
||||
| `memories` | array | Tous les objets de mémoire avec les champs `conversationId` et `data` |
|
||||
| `error` | string | Message d'erreur si l'opération a échoué |
|
||||
|
||||
### `memory_delete`
|
||||
|
||||
Supprimer la mémoire par ID de conversation.
|
||||
Récupérer toutes les mémoires de la base de données
|
||||
|
||||
#### Entrée
|
||||
|
||||
| Paramètre | Type | Obligatoire | Description |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | string | Oui | Identifiant de conversation à supprimer |
|
||||
|
||||
#### Sortie
|
||||
|
||||
| Paramètre | Type | Description |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | Indique si l'opération a réussi |
|
||||
| `message` | string | Message de confirmation |
|
||||
| `error` | string | Message d'erreur si l'opération a échoué |
|
||||
| `success` | booléen | Indique si toutes les mémoires ont été récupérées avec succès |
|
||||
| `memories` | tableau | Tableau de tous les objets mémoire avec les champs key, conversationId et data |
|
||||
| `message` | chaîne | Message de succès ou d'erreur |
|
||||
| `error` | chaîne | Message d'erreur en cas d'échec |
|
||||
|
||||
## Types de mémoire d'agent
|
||||
### `memory_delete`
|
||||
|
||||
Lors de l'utilisation de la mémoire avec un bloc Agent, vous pouvez configurer la manière dont l'historique de conversation est géré :
|
||||
Supprimer les mémoires par conversationId.
|
||||
|
||||
| Type | Description |
|
||||
| ---- | ----------- |
|
||||
| **Conversation complète** | Stocke tous les messages, limité par la fenêtre de contexte du modèle (utilise 90 % pour laisser de la place pour la réponse) |
|
||||
| **Fenêtre glissante (messages)** | Conserve les N derniers messages (par défaut : 10) |
|
||||
| **Fenêtre glissante (tokens)** | Conserve les messages qui tiennent dans une limite de tokens (par défaut : 4000) |
|
||||
#### Entrée
|
||||
|
||||
## Remarques
|
||||
| Paramètre | Type | Obligatoire | Description |
|
||||
| --------- | ---- | ----------- | ----------- |
|
||||
| `conversationId` | chaîne | Non | Identifiant de conversation (par ex., user-123, session-abc). Supprime toutes les mémoires pour cette conversation. |
|
||||
| `id` | chaîne | Non | Paramètre hérité pour l'identifiant de conversation. Utilisez conversationId à la place. Fourni pour la rétrocompatibilité. |
|
||||
|
||||
- La mémoire est limitée par espace de travail — les workflows dans le même espace de travail partagent le stockage de mémoire
|
||||
- Utilisez des valeurs `conversationId` uniques pour garder les conversations séparées (par ex., ID de session, ID d'utilisateur ou UUID)
|
||||
- Les messages système appartiennent à la configuration du bloc Agent, pas à la mémoire
|
||||
#### Sortie
|
||||
|
||||
| Paramètre | Type | Description |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | booléen | Indique si la mémoire a été supprimée avec succès |
|
||||
| `message` | chaîne | Message de succès ou d'erreur |
|
||||
| `error` | chaîne | Message d'erreur en cas d'échec |
|
||||
|
||||
## Notes
|
||||
|
||||
- Catégorie : `blocks`
|
||||
- Type : `memory`
|
||||
|
||||
@@ -34,81 +34,87 @@ SimはPDF、Word(DOC/DOCX)、プレーンテキスト(TXT)、Markdown(
|
||||
<Image src="/static/knowledgebase/knowledgebase.png" alt="処理されたコンテンツを表示するドキュメントチャンクビュー" width={800} height={500} />
|
||||
|
||||
### チャンク設定
|
||||
- **デフォルトチャンクサイズ**: 1,024文字
|
||||
- **設定可能範囲**: チャンクあたり100〜4,000文字
|
||||
- **スマートオーバーラップ**: コンテキスト保持のためデフォルトで200文字
|
||||
- **階層的分割**: 文書構造(セクション、段落、文)を尊重
|
||||
|
||||
ナレッジベースを作成する際、ドキュメントをチャンクに分割する方法を設定できます。
|
||||
|
||||
| 設定 | 単位 | デフォルト | 範囲 | 説明 |
|
||||
|---------|------|---------|-------|-------------|
|
||||
| **最大チャンクサイズ** | トークン | 1,024 | 100-4,000 | 各チャンクの最大サイズ(1トークン ≈ 4文字) |
|
||||
| **最小チャンクサイズ** | 文字 | 1 | 1-2,000 | 小さな断片を避けるための最小チャンクサイズ |
|
||||
| **オーバーラップ** | 文字 | 200 | 0-500 | 連続するチャンク間のコンテキストオーバーラップ |
|
||||
|
||||
- **階層的分割**: ドキュメント構造(セクション、段落、文)を尊重
|
||||
|
||||
### 編集機能
|
||||
- **チャンク内容の編集**: 個々のチャンクのテキスト内容を修正
|
||||
- **チャンク境界の調整**: 必要に応じてチャンクの結合や分割
|
||||
- **チャンクコンテンツの編集**: 個々のチャンクのテキストコンテンツを変更
|
||||
- **チャンク境界の調整**: 必要に応じてチャンクを結合または分割
|
||||
- **メタデータの追加**: 追加のコンテキストでチャンクを強化
|
||||
- **一括操作**: 複数のチャンクを効率的に管理
|
||||
|
||||
## 高度なPDF処理
|
||||
|
||||
PDFドキュメントについて、Simは強化された処理機能を提供します:
|
||||
PDFドキュメントに対して、Simは強化された処理機能を提供します。
|
||||
|
||||
### OCRサポート
|
||||
Azureまたは[Mistral OCR](https://docs.mistral.ai/ocr/)で構成されている場合:
|
||||
- **スキャンされたドキュメント処理**: 画像ベースのPDFからテキストを抽出
|
||||
- **混合コンテンツ処理**: テキストと画像の両方を含むPDFを処理
|
||||
- **高精度**: 高度なAIモデルが正確なテキスト抽出を保証
|
||||
Azureまたは[Mistral OCR](https://docs.mistral.ai/ocr/)で設定されている場合:
|
||||
- **スキャンされたドキュメントの処理**: 画像ベースのPDFからテキストを抽出
|
||||
- **混合コンテンツの処理**: テキストと画像の両方を含むPDFを処理
|
||||
- **高精度**: 高度なAIモデルにより正確なテキスト抽出を保証
|
||||
|
||||
## ワークフローでのナレッジブロックの使用
|
||||
|
||||
ドキュメントが処理されると、ナレッジブロックを通じてAIワークフローで使用できるようになります。これにより検索拡張生成(RAG)が可能になり、AIエージェントがドキュメントの内容にアクセスして推論し、より正確でコンテキストに沿った回答を提供できます。
|
||||
ドキュメントが処理されると、ナレッジブロックを通じてAIワークフローで使用できます。これにより検索拡張生成(RAG)が可能になり、AIエージェントがドキュメントコンテンツにアクセスして推論し、より正確でコンテキストに沿った応答を提供できます。
|
||||
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="ワークフローでのナレッジブロックの使用" width={800} height={500} />
|
||||
|
||||
### ナレッジブロックの機能
|
||||
- **意味検索**: 自然言語クエリを使用して関連コンテンツを検索
|
||||
- **コンテキスト統合**: エージェントプロンプトに関連チャンクを自動的に含める
|
||||
- **動的検索**: ワークフロー実行中にリアルタイムで検索が行われる
|
||||
- **関連性スコアリング**: 意味的類似性によって結果がランク付け
|
||||
- **セマンティック検索**: 自然言語クエリを使用して関連コンテンツを検索
|
||||
- **コンテキスト統合**: 関連するチャンクをエージェントプロンプトに自動的に含める
|
||||
- **動的検索**: ワークフロー実行中にリアルタイムで検索を実行
|
||||
- **関連性スコアリング**: セマンティック類似度によって結果をランク付け
|
||||
|
||||
### 統合オプション
|
||||
- **システムプロンプト**: AIエージェントにコンテキストを提供
|
||||
- **動的コンテキスト**: 会話中に関連情報を検索して含める
|
||||
- **複数ドキュメント検索**: ナレッジベース全体を横断して検索
|
||||
- **フィルター検索**: タグと組み合わせて正確なコンテンツ検索
|
||||
- **複数ドキュメント検索**: ナレッジベース全体をクエリ
|
||||
- **フィルター検索**: タグと組み合わせて正確なコンテンツ取得
|
||||
|
||||
## ベクトル検索技術
|
||||
|
||||
Simは[pgvector](https://github.com/pgvector/pgvector)を活用したベクトル検索を使用して、コンテンツの意味とコンテキストを理解します:
|
||||
Simは[pgvector](https://github.com/pgvector/pgvector)を活用したベクトル検索により、コンテンツの意味とコンテキストを理解します。
|
||||
|
||||
### 意味的理解
|
||||
- **コンテキスト検索**:正確なキーワードが一致しなくても関連コンテンツを見つける
|
||||
- **概念ベースの検索**:アイデア間の関係性を理解
|
||||
- **多言語サポート**:異なる言語間で機能
|
||||
- **同義語認識**:関連する用語や概念を見つける
|
||||
### セマンティック理解
|
||||
- **コンテキスト検索**: 正確なキーワードが一致しない場合でも関連コンテンツを検索
|
||||
- **概念ベースの取得**: アイデア間の関係を理解
|
||||
- **多言語サポート**: 異なる言語間で動作
|
||||
- **同義語認識**: 関連する用語と概念を検索
|
||||
|
||||
### 検索機能
|
||||
- **自然言語クエリ**:平易な日本語で質問できる
|
||||
- **類似性検索**:概念的に類似したコンテンツを見つける
|
||||
- **ハイブリッド検索**:ベクトル検索と従来のキーワード検索を組み合わせる
|
||||
- **結果の設定**:結果の数と関連性の閾値を制御
|
||||
- **自然言語クエリ**: 平易な英語で質問
|
||||
- **類似検索**: 概念的に類似したコンテンツを検索
|
||||
- **ハイブリッド検索**: ベクトル検索と従来のキーワード検索を組み合わせ
|
||||
- **設定可能な結果**: 結果の数と関連性のしきい値を制御
|
||||
|
||||
## ドキュメント管理
|
||||
|
||||
### 整理機能
|
||||
- **一括アップロード**:非同期APIを通じて複数のファイルを一度にアップロード
|
||||
- **処理状況**:ドキュメント処理のリアルタイム更新
|
||||
- **検索とフィルタリング**:大規模なコレクションからドキュメントを素早く見つける
|
||||
- **メタデータ追跡**:ファイル情報と処理詳細の自動キャプチャ
|
||||
- **一括アップロード**: 非同期API経由で複数ファイルを一度にアップロード
|
||||
- **処理ステータス**: ドキュメント処理のリアルタイム更新
|
||||
- **検索とフィルター**: 大規模なコレクション内でドキュメントを素早く検索
|
||||
- **メタデータ追跡**: ファイル情報と処理詳細の自動キャプチャ
|
||||
|
||||
### セキュリティとプライバシー
|
||||
- **安全なストレージ**:エンタープライズグレードのセキュリティでドキュメントを保存
|
||||
- **アクセス制御**:ワークスペースベースの権限
|
||||
- **処理の分離**:各ワークスペースは分離されたドキュメント処理を持つ
|
||||
- **データ保持**:ドキュメント保持ポリシーの設定
|
||||
- **安全なストレージ**: エンタープライズグレードのセキュリティでドキュメントを保存
|
||||
- **アクセス制御**: ワークスペースベースの権限
|
||||
- **処理の分離**: 各ワークスペースは分離されたドキュメント処理を実施
|
||||
- **データ保持**: ドキュメント保持ポリシーを設定
|
||||
|
||||
## はじめに
|
||||
|
||||
1. **ナレッジベースに移動**:ワークスペースのサイドバーからアクセス
|
||||
2. **ドキュメントのアップロード**:ドラッグ&ドロップまたはファイルを選択してアップロード
|
||||
3. **処理の監視**:ドキュメントが処理されチャンク化される過程を確認
|
||||
4. **チャンクの探索**:処理されたコンテンツを表示・編集
|
||||
5. **ワークフローへの追加**:ナレッジブロックを使用してAIエージェントと統合
|
||||
1. **ナレッジベースに移動**: ワークスペースのサイドバーからアクセス
|
||||
2. **ドキュメントをアップロード**: ドラッグアンドドロップまたはファイルを選択してアップロード
|
||||
3. **処理を監視**: ドキュメントが処理され、チャンク化される様子を確認
|
||||
4. **チャンクを探索**: 処理されたコンテンツを表示および編集
|
||||
5. **ワークフローに追加**: Knowledgeブロックを使用してAIエージェントと統合
|
||||
|
||||
ナレッジベースは静的なドキュメントを、AIワークフローがより情報に基づいた文脈的な応答のために活用できる、インテリジェントで検索可能なリソースに変換します。
|
||||
ナレッジベースは、静的なドキュメントをインテリジェントで検索可能なリソースに変換し、AIワークフローがより情報に基づいた文脈に応じた応答を活用できるようにします。
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: メモリー
|
||||
description: 会話履歴を保存および取得
|
||||
description: メモリストアを追加
|
||||
---
|
||||
|
||||
import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
@@ -10,94 +10,91 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
color="#F64F9E"
|
||||
/>
|
||||
|
||||
## 概要
|
||||
## 使用方法
|
||||
|
||||
Memoryブロックはエージェントの会話履歴を保存します。各メモリは、提供する`conversationId`によって識別されます。複数のエージェントが同じ`conversationId`を使用することで、同じメモリを共有できます。
|
||||
|
||||
メモリにはユーザーとアシスタントのメッセージのみが保存されます。システムメッセージは保存されません。これらはAgentブロックで設定され、実行時にプレフィックスとして付加されます。
|
||||
ワークフローにメモリを統合します。メモリの追加、取得、全メモリの取得、削除が可能です。
|
||||
|
||||
## ツール
|
||||
|
||||
### `memory_add`
|
||||
|
||||
メモリにメッセージを追加します。`conversationId`が存在しない場合は新しいメモリを作成し、既存のメモリがある場合は追加します。
|
||||
データベースに新しいメモリを追加するか、同じIDを持つ既存のメモリに追記します。
|
||||
|
||||
#### 入力
|
||||
|
||||
| パラメータ | 型 | 必須 | 説明 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | はい | 会話の一意の識別子(例:`user-123`、`session-abc`) |
|
||||
| `role` | string | はい | メッセージの役割:`user`または`assistant` |
|
||||
| `content` | string | はい | メッセージの内容 |
|
||||
| `conversationId` | string | いいえ | 会話識別子(例:user-123、session-abc)。この会話IDを持つメモリが既に存在する場合、新しいメッセージが追記されます。 |
|
||||
| `id` | string | いいえ | 会話識別子のレガシーパラメータ。代わりにconversationIdを使用してください。後方互換性のために提供されています。 |
|
||||
| `role` | string | はい | エージェントメモリのロール(user、assistant、またはsystem) |
|
||||
| `content` | string | はい | エージェントメモリのコンテンツ |
|
||||
|
||||
#### 出力
|
||||
|
||||
| パラメータ | 型 | 説明 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 操作が成功したかどうか |
|
||||
| `memories` | array | 更新されたメモリの配列 |
|
||||
| `error` | string | 失敗した場合のエラーメッセージ |
|
||||
| `success` | boolean | メモリが正常に追加されたかどうか |
|
||||
| `memories` | array | 新規または更新されたメモリを含むメモリオブジェクトの配列 |
|
||||
| `error` | string | 操作が失敗した場合のエラーメッセージ |
|
||||
|
||||
### `memory_get`
|
||||
|
||||
会話IDによってメモリを取得します。
|
||||
会話IDによってメモリを取得します。一致するメモリを返します。
|
||||
|
||||
#### 入力
|
||||
|
||||
| パラメータ | 型 | 必須 | 説明 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | はい | 会話の識別子 |
|
||||
| `conversationId` | string | いいえ | 会話識別子(例:user-123、session-abc)。この会話のメモリを返します。 |
|
||||
| `id` | string | いいえ | 会話識別子のレガシーパラメータ。代わりにconversationIdを使用してください。後方互換性のために提供されています。 |
|
||||
|
||||
#### 出力
|
||||
|
||||
| パラメータ | 型 | 説明 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 操作が成功したかどうか |
|
||||
| `memories` | array | `role`と`content`を含むメッセージの配列 |
|
||||
| `error` | string | 失敗した場合のエラーメッセージ |
|
||||
| `success` | boolean | メモリが正常に取得されたかどうか |
|
||||
| `memories` | array | conversationIdとdataフィールドを含むメモリオブジェクトの配列 |
|
||||
| `message` | string | 成功またはエラーメッセージ |
|
||||
| `error` | string | 操作が失敗した場合のエラーメッセージ |
|
||||
|
||||
### `memory_get_all`
|
||||
|
||||
現在のワークスペースのすべてのメモリを取得します。
|
||||
|
||||
#### 出力
|
||||
|
||||
| パラメータ | 型 | 説明 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 操作が成功したかどうか |
|
||||
| `memories` | array | `conversationId`と`data`フィールドを持つすべてのメモリオブジェクト |
|
||||
| `error` | string | 失敗した場合のエラーメッセージ |
|
||||
|
||||
### `memory_delete`
|
||||
|
||||
会話IDによってメモリを削除します。
|
||||
データベースからすべてのメモリを取得します
|
||||
|
||||
#### 入力
|
||||
|
||||
| パラメータ | 型 | 必須 | 説明 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | はい | 削除する会話識別子 |
|
||||
|
||||
#### 出力
|
||||
|
||||
| パラメータ | 型 | 説明 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 操作が成功したかどうか |
|
||||
| `message` | string | 確認メッセージ |
|
||||
| `error` | string | 失敗した場合のエラーメッセージ |
|
||||
| `success` | boolean | すべてのメモリが正常に取得されたかどうか |
|
||||
| `memories` | array | key、conversationId、dataフィールドを含むすべてのメモリオブジェクトの配列 |
|
||||
| `message` | string | 成功またはエラーメッセージ |
|
||||
| `error` | string | 操作が失敗した場合のエラーメッセージ |
|
||||
|
||||
## エージェントメモリタイプ
|
||||
### `memory_delete`
|
||||
|
||||
エージェントブロックでメモリを使用する場合、会話履歴の管理方法を設定できます。
|
||||
conversationIdによってメモリを削除します。
|
||||
|
||||
| タイプ | 説明 |
|
||||
| ---- | ----------- |
|
||||
| **完全な会話** | すべてのメッセージを保存し、モデルのコンテキストウィンドウによって制限されます(応答のための余地を残すために90%を使用) |
|
||||
| **スライディングウィンドウ(メッセージ)** | 最後のNメッセージを保持します(デフォルト:10) |
|
||||
| **スライディングウィンドウ(トークン)** | トークン制限内に収まるメッセージを保持します(デフォルト:4000) |
|
||||
#### 入力
|
||||
|
||||
| パラメータ | 型 | 必須 | 説明 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | いいえ | 会話識別子(例:user-123、session-abc)。この会話のすべてのメモリを削除します。 |
|
||||
| `id` | string | いいえ | 会話識別子のレガシーパラメータ。代わりにconversationIdを使用してください。後方互換性のために提供されています。 |
|
||||
|
||||
#### 出力
|
||||
|
||||
| パラメータ | 型 | 説明 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | メモリが正常に削除されたかどうか |
|
||||
| `message` | string | 成功またはエラーメッセージ |
|
||||
| `error` | string | 操作が失敗した場合のエラーメッセージ |
|
||||
|
||||
## 注意事項
|
||||
|
||||
- メモリはワークスペースごとにスコープされます。同じワークスペース内のワークフローはメモリストアを共有します
|
||||
- 会話を分離するために一意の`conversationId`値を使用してください(例:セッションID、ユーザーID、またはUUID)
|
||||
- システムメッセージはメモリではなく、エージェントブロック設定に属します
|
||||
- カテゴリ: `blocks`
|
||||
- タイプ: `memory`
|
||||
|
||||
@@ -34,81 +34,87 @@ Sim 支持 PDF、Word (DOC/DOCX)、纯文本 (TXT)、Markdown (MD)、HTML、Exce
|
||||
<Image src="/static/knowledgebase/knowledgebase.png" alt="显示已处理内容的文档分块视图" width={800} height={500} />
|
||||
|
||||
### 分块配置
|
||||
- **默认分块大小**:1,024 个字符
|
||||
- **可配置范围**:每块 100-4,000 个字符
|
||||
- **智能重叠**:默认重叠 200 个字符以保留上下文
|
||||
|
||||
在创建知识库时,您可以配置文档如何被拆分为多个分块:
|
||||
|
||||
| 设置 | 单位 | 默认值 | 范围 | 说明 |
|
||||
|---------|------|---------|-------|-------------|
|
||||
| **最大分块大小** | tokens | 1,024 | 100-4,000 | 每个分块的最大大小(1 token ≈ 4 个字符) |
|
||||
| **最小分块大小** | 字符 | 1 | 1-2,000 | 避免生成过小分块的最小分块大小 |
|
||||
| **重叠量** | 字符 | 200 | 0-500 | 相邻分块之间的上下文重叠字符数 |
|
||||
|
||||
- **分层拆分**:遵循文档结构(章节、段落、句子)
|
||||
|
||||
### 编辑功能
|
||||
- **编辑分块内容**:修改单个分块的文本内容
|
||||
- **编辑分块内容**:可修改单个分块的文本内容
|
||||
- **调整分块边界**:根据需要合并或拆分分块
|
||||
- **添加元数据**:为分块添加额外的上下文信息
|
||||
- **添加元数据**:为分块补充更多上下文信息
|
||||
- **批量操作**:高效管理多个分块
|
||||
|
||||
## 高级 PDF 处理
|
||||
|
||||
对于 PDF 文档,Sim 提供增强的处理功能:
|
||||
对于 PDF 文档,Sim 提供了增强的处理能力:
|
||||
|
||||
### OCR 支持
|
||||
当配置了 Azure 或 [Mistral OCR](https://docs.mistral.ai/ocr/) 时:
|
||||
- **扫描文档处理**:从基于图像的 PDF 中提取文本
|
||||
- **混合内容处理**:处理同时包含文本和图像的 PDF
|
||||
- **高精度**:先进的 AI 模型确保准确的文本提取
|
||||
- **混合内容处理**:处理同时包含文本和图片的 PDF
|
||||
- **高精度**:先进的 AI 模型确保文本提取的准确性
|
||||
|
||||
## 在工作流中使用知识块
|
||||
|
||||
一旦您的文档被处理,您可以通过知识块在 AI 工作流中使用它们。这使得检索增强生成(RAG)成为可能,让您的 AI 代理能够访问并推理文档内容,从而提供更准确、有上下文的响应。
|
||||
文档处理完成后,您可以通过知识块在 AI 工作流中使用它们。这实现了 RAG(检索增强生成),让您的 AI 智能体能够访问并理解文档内容,从而提供更准确、有上下文的回复。
|
||||
|
||||
<Image src="/static/knowledgebase/knowledgebase-2.png" alt="在工作流中使用知识块" width={800} height={500} />
|
||||
|
||||
### 知识块功能
|
||||
- **语义搜索**:使用自然语言查询查找相关内容
|
||||
- **上下文集成**:自动将相关分块包含在代理提示中
|
||||
- **动态检索**:在工作流执行期间实时搜索
|
||||
- **相关性评分**:根据语义相似性对结果进行排名
|
||||
- **语义搜索**:通过自然语言查询查找相关内容
|
||||
- **上下文集成**:自动将相关分块纳入智能体提示词
|
||||
- **动态检索**:在工作流执行时实时搜索
|
||||
- **相关性评分**:根据语义相似度对结果进行排序
|
||||
|
||||
### 集成选项
|
||||
- **系统提示**:为您的 AI 代理提供上下文
|
||||
- **动态上下文**:在对话中搜索并包含相关信息
|
||||
- **多文档搜索**:在整个知识库中查询
|
||||
- **过滤搜索**:结合标签实现精确内容检索
|
||||
- **系统提示**:为你的 AI 智能体提供上下文
|
||||
- **动态上下文**:在对话中搜索并纳入相关信息
|
||||
- **多文档搜索**:可在整个知识库中查询
|
||||
- **筛选搜索**:结合标签,实现精准内容检索
|
||||
|
||||
## 向量搜索技术
|
||||
|
||||
Sim 使用由 [pgvector](https://github.com/pgvector/pgvector) 提供支持的向量搜索来理解您的内容的含义和上下文:
|
||||
Sim 利用 [pgvector](https://github.com/pgvector/pgvector) 提供的向量搜索,理解你的内容的含义和上下文:
|
||||
|
||||
### 语义理解
|
||||
- **上下文搜索**:即使精确的关键词不匹配,也能找到相关内容
|
||||
- **基于概念的检索**:理解想法之间的关系
|
||||
- **多语言支持**:支持跨不同语言工作
|
||||
- **同义词识别**:找到相关术语和概念
|
||||
- **上下文搜索**:即使关键词不完全匹配,也能找到相关内容
|
||||
- **基于概念的检索**:理解不同想法之间的关系
|
||||
- **多语言支持**:可跨多种语言使用
|
||||
- **同义词识别**:发现相关术语和概念
|
||||
|
||||
### 搜索功能
|
||||
- **自然语言查询**:用简单的英语提问
|
||||
- **相似性搜索**:找到概念上相似的内容
|
||||
- **混合搜索**:结合向量和传统关键词搜索
|
||||
- **可配置结果**:控制结果的数量和相关性阈值
|
||||
### 搜索能力
|
||||
- **自然语言查询**:可用简单英文提问
|
||||
- **相似度搜索**:查找概念上相似的内容
|
||||
- **混合搜索**:结合向量与传统关键词搜索
|
||||
- **结果可配置**:可控制结果数量和相关性阈值
|
||||
|
||||
## 文档管理
|
||||
|
||||
### 组织功能
|
||||
- **批量上传**:通过异步 API 一次上传多个文件
|
||||
- **处理状态**:实时更新文档处理状态
|
||||
- **搜索和过滤**:在大型集合中快速找到文档
|
||||
- **元数据跟踪**:自动捕获文件信息和处理详情
|
||||
- **处理状态**:实时更新文档处理进度
|
||||
- **搜索与筛选**:在大型集合中快速查找文档
|
||||
- **元数据追踪**:自动记录文件信息和处理详情
|
||||
|
||||
### 安全性和隐私
|
||||
- **安全存储**:文档以企业级安全性存储
|
||||
- **访问控制**:基于工作区的权限设置
|
||||
- **处理隔离**:每个工作区的文档处理是独立的
|
||||
- **数据保留**:配置文档保留策略
|
||||
### 安全与隐私
|
||||
- **安全存储**:文档采用企业级安全存储
|
||||
- **访问控制**:基于工作区的权限管理
|
||||
- **处理隔离**:每个工作区的文档处理相互隔离
|
||||
- **数据保留**:可配置文档保留策略
|
||||
|
||||
## 快速入门
|
||||
## 快速开始
|
||||
|
||||
1. **导航到您的知识库**:从工作区侧边栏访问
|
||||
2. **上传文档**:拖放或选择文件进行上传
|
||||
3. **监控处理**:查看文档的处理和分块进度
|
||||
4. **探索分块**:查看和编辑处理后的内容
|
||||
5. **添加到工作流**:使用知识块与您的 AI 代理集成
|
||||
1. **进入你的知识库**:可在工作区侧边栏访问
|
||||
2. **上传文档**:拖拽或选择文件上传
|
||||
3. **监控处理进度**:实时查看文档处理与分块
|
||||
4. **浏览分块内容**:查看并编辑已处理内容
|
||||
5. **添加到工作流**:使用 Knowledge 模块集成到你的 AI 智能体
|
||||
|
||||
知识库将您的静态文档转化为智能的、可搜索的资源,使您的 AI 工作流能够利用这些资源提供更有信息量和上下文的响应。
|
||||
知识库将您的静态文档转化为智能、可搜索的资源,使您的 AI 工作流能够利用这些信息,提供更有见地和更具上下文的回应。
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: 内存
|
||||
description: 存储和检索会话历史记录
|
||||
description: 添加记忆存储
|
||||
---
|
||||
|
||||
import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
@@ -10,94 +10,91 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
|
||||
color="#F64F9E"
|
||||
/>
|
||||
|
||||
## 概述
|
||||
## 使用说明
|
||||
|
||||
Memory 模块为代理存储会话历史。每条内存都由你提供的 `conversationId` 唯一标识。多个代理可以通过使用相同的 `conversationId` 共享同一份内存。
|
||||
|
||||
Memory 仅存储用户和助手消息。系统消息不会被存储——它们在 Agent 模块中配置,并在运行时作为前缀添加。
|
||||
将 Memory 集成到工作流程中。可以添加、获取单条记忆、获取所有记忆,以及删除记忆。
|
||||
|
||||
## 工具
|
||||
|
||||
### `memory_add`
|
||||
|
||||
向内存添加一条消息。如果 `conversationId` 不存在,则创建新的内存,否则追加到现有内存。
|
||||
向数据库添加新记忆,或将内容追加到已有相同 ID 的记忆中。
|
||||
|
||||
#### 输入
|
||||
|
||||
| 参数 | 类型 | 必需 | 描述 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | 是 | 会话的唯一标识符(如 `user-123`、`session-abc`) |
|
||||
| `role` | string | 是 | 消息角色:`user` 或 `assistant` |
|
||||
| `content` | string | 是 | 消息内容 |
|
||||
| --------- | ---- | ---- | ----------- |
|
||||
| `conversationId` | string | 否 | 会话标识符(如 user-123、session-abc)。如果已存在该 conversationId 的记忆,则新消息会追加到其中。 |
|
||||
| `id` | string | 否 | 旧版会话标识参数。请使用 conversationId,保留用于兼容性。 |
|
||||
| `role` | string | 是 | agent 记忆的角色(user、assistant 或 system) |
|
||||
| `content` | string | 是 | agent 记忆的内容 |
|
||||
|
||||
#### 输出
|
||||
|
||||
| 参数 | 类型 | 描述 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 操作是否成功 |
|
||||
| `memories` | array | 更新后的内存数组 |
|
||||
| `error` | string | 失败时的错误信息 |
|
||||
| `success` | boolean | 记忆是否添加成功 |
|
||||
| `memories` | array | 包含新建或更新记忆的记忆对象数组 |
|
||||
| `error` | string | 操作失败时的错误信息 |
|
||||
|
||||
### `memory_get`
|
||||
|
||||
通过会话 ID 检索内存。
|
||||
根据 conversationId 检索记忆,返回匹配的记忆内容。
|
||||
|
||||
#### 输入
|
||||
|
||||
| 参数 | 类型 | 必需 | 描述 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | 是 | 会话标识符 |
|
||||
| --------- | ---- | ---- | ----------- |
|
||||
| `conversationId` | string | 否 | 会话标识符(如 user-123、session-abc)。返回该会话的记忆。 |
|
||||
| `id` | string | 否 | 旧版会话标识参数。请使用 conversationId,保留用于兼容性。 |
|
||||
|
||||
#### 输出
|
||||
|
||||
| 参数 | 类型 | 描述 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 操作是否成功 |
|
||||
| `memories` | array | 包含 `role` 和 `content` 字段的消息数组 |
|
||||
| `error` | string | 失败时的错误信息 |
|
||||
| `success` | boolean | 是否成功检索到内存 |
|
||||
| `memories` | array | 包含 conversationId 和 data 字段的内存对象数组 |
|
||||
| `message` | string | 成功或错误信息 |
|
||||
| `error` | string | 操作失败时的错误信息 |
|
||||
|
||||
### `memory_get_all`
|
||||
|
||||
检索当前工作区的所有内存。
|
||||
|
||||
#### 输出
|
||||
|
||||
| 参数 | 类型 | 描述 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | 布尔值 | 操作是否成功 |
|
||||
| `memories` | 数组 | 包含 `conversationId` 和 `data` 字段的所有内存对象 |
|
||||
| `error` | 字符串 | 如果失败则为错误信息 |
|
||||
|
||||
### `memory_delete`
|
||||
|
||||
根据会话 ID 删除内存。
|
||||
从数据库中检索所有内存
|
||||
|
||||
#### 输入
|
||||
|
||||
| 参数 | 类型 | 必需 | 描述 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | 是 | 要删除的会话标识符 |
|
||||
|
||||
#### 输出
|
||||
|
||||
| 参数 | 类型 | 描述 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | 布尔值 | 操作是否成功 |
|
||||
| `message` | 字符串 | 确认信息 |
|
||||
| `error` | 字符串 | 如果失败则为错误信息 |
|
||||
| `success` | boolean | 是否成功检索到所有内存 |
|
||||
| `memories` | array | 包含 key、conversationId 和 data 字段的所有内存对象数组 |
|
||||
| `message` | string | 成功或错误信息 |
|
||||
| `error` | string | 操作失败时的错误信息 |
|
||||
|
||||
## Agent 内存类型
|
||||
### `memory_delete`
|
||||
|
||||
在 Agent block 中使用内存时,可以配置对话历史的管理方式:
|
||||
根据 conversationId 删除内存。
|
||||
|
||||
| 类型 | 描述 |
|
||||
| ---- | ----------- |
|
||||
| **完整对话** | 存储所有消息,受模型上下文窗口限制(使用 90% 留出响应空间) |
|
||||
| **滑动窗口(消息)** | 保留最近 N 条消息(默认:10) |
|
||||
| **滑动窗口(Token)** | 保留在 token 限制内的消息(默认:4000) |
|
||||
#### 输入
|
||||
|
||||
| 参数 | 类型 | 必需 | 描述 |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `conversationId` | string | 否 | 会话标识符(如 user-123、session-abc)。将删除该会话的所有内存。 |
|
||||
| `id` | string | 否 | 旧版会话标识参数。请使用 conversationId,保留用于兼容性。 |
|
||||
|
||||
#### 输出
|
||||
|
||||
| 参数 | 类型 | 描述 |
|
||||
| --------- | ---- | ----------- |
|
||||
| `success` | boolean | 是否成功删除内存 |
|
||||
| `message` | string | 成功或错误信息 |
|
||||
| `error` | string | 操作失败时的错误信息 |
|
||||
|
||||
## 注意事项
|
||||
|
||||
- 内存以工作区为作用域——同一工作区内的工作流共享内存存储
|
||||
- 使用唯一的 `conversationId` 值以区分不同会话(如 session ID、user ID 或 UUID)
|
||||
- 系统消息应配置在 Agent block 中,而不是存储在内存中
|
||||
- 类别:`blocks`
|
||||
- 类型:`memory`
|
||||
|
||||
@@ -1887,40 +1887,38 @@ checksums:
|
||||
content/34: 93be16cbc63507a9568584e2a30df4b4
|
||||
4fea5b273049862aed6ad597bfc35c3f:
|
||||
meta/title: 7e91fe4b762eaa7410fa882788e1504b
|
||||
meta/description: 512271c582e751223eb1019e597567d1
|
||||
meta/description: eb391c869e4d86d21e4ee08ffff2a318
|
||||
content/0: 1b031fb0c62c46b177aeed5c3d3f8f80
|
||||
content/1: 9002ead3131e47a05d7e51cd0625a9c3
|
||||
content/2: 5e26527ccf8fddebe14c951e6c950b48
|
||||
content/3: f924477b58a6dfb1998a3b813aef137f
|
||||
content/4: bcf9f2889c3ae5cce8ee15ec2b5bf420
|
||||
content/5: 9c8aa3f09c9b2bd50ea4cdff3598ea4e
|
||||
content/6: b061763378e5f0aca9a25f819d03961d
|
||||
content/7: d72443c3243cb8c02fef34bbf93ec902
|
||||
content/8: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/9: 6bece1f6da7352bfbc599aa00c8e73f3
|
||||
content/10: bcadfc362b69078beee0088e5936c98b
|
||||
content/11: 7b4100835e9c451ee964a9d541b9809d
|
||||
content/12: ba06fa96a9fe3d308546a32490e5a8d8
|
||||
content/13: 05225dfca5775628e5689881337f3d38
|
||||
content/14: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/15: 619fe4c25862d6569a7a1b3f1a5f4c4a
|
||||
content/16: bcadfc362b69078beee0088e5936c98b
|
||||
content/17: 63391e8019b8fa1aad16d3ea6e9be233
|
||||
content/18: e13dff194d0bc1cecec833cb9805ceaa
|
||||
content/19: 4dd78888f06b58cdb7e4c553d0a1dfff
|
||||
content/20: bcadfc362b69078beee0088e5936c98b
|
||||
content/21: 3caac895b994feeceaa029aa861622f2
|
||||
content/22: 9eebc263273839cc24231b56fd90b71d
|
||||
content/23: 75cbc13ac8165d0d4b116d3b1d39ca78
|
||||
content/24: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/25: c976a33ebd5c10cc12ce481d34c1762e
|
||||
content/26: bcadfc362b69078beee0088e5936c98b
|
||||
content/27: b43302dfa350267133383c7e16a812c9
|
||||
content/28: 5b00a1cdb83a985bfa4d765d733b8ff5
|
||||
content/29: b6a3a63980bff5be5253cdd668decb86
|
||||
content/30: 81383f5352db2cc099ce66e46e7d87a6
|
||||
content/31: b3f310d5ef115bea5a8b75bf25d7ea9a
|
||||
content/32: 5859e8a2cb4738fadc795e38d0d15a5e
|
||||
content/2: 821e6394b0a953e2b0842b04ae8f3105
|
||||
content/3: 78a5b0789693f40d19e69c50e02f7547
|
||||
content/4: 9c8aa3f09c9b2bd50ea4cdff3598ea4e
|
||||
content/5: b061763378e5f0aca9a25f819d03961d
|
||||
content/6: 75972cfff5aa2f1d4c24f2a1c867cfb7
|
||||
content/7: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/8: deb556a0ce8537461dd58a02e584d808
|
||||
content/9: bcadfc362b69078beee0088e5936c98b
|
||||
content/10: 467bff9c1a90c96930d1b05286dd4bf8
|
||||
content/11: ba06fa96a9fe3d308546a32490e5a8d8
|
||||
content/12: 8461d1c991d4c595a64940dc51b130e5
|
||||
content/13: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/14: 72895fa081d39eec0bdf7877fd53580e
|
||||
content/15: bcadfc362b69078beee0088e5936c98b
|
||||
content/16: 8a2c3d0b818f57012cb3d2e50d2dd05d
|
||||
content/17: e13dff194d0bc1cecec833cb9805ceaa
|
||||
content/18: 8813ba0bc9fbf636f3a38e59667df896
|
||||
content/19: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/20: d71b6bb8e2dd6ce98101aec6a1dd77f2
|
||||
content/21: bcadfc362b69078beee0088e5936c98b
|
||||
content/22: 7b17554ad765c6283fc5fe6c29b9cc77
|
||||
content/23: 9eebc263273839cc24231b56fd90b71d
|
||||
content/24: c442d573aaae976f5fab534388cee115
|
||||
content/25: 371d0e46b4bd2c23f559b8bc112f6955
|
||||
content/26: 2bb55f4566a06bedea778f010f093d19
|
||||
content/27: bcadfc362b69078beee0088e5936c98b
|
||||
content/28: b48618ae66e09c34074972d091ceaef0
|
||||
content/29: b3f310d5ef115bea5a8b75bf25d7ea9a
|
||||
content/30: 715540bddd4dec0f0cb8ef96aebbd0d0
|
||||
4fcc3e154a987749322b9e83d6e028e6:
|
||||
meta/title: 3a3dac524cf01fd16a5ec2f75672fd13
|
||||
meta/description: ce6cdd6ab1b33ba072ef03d843b7f3bd
|
||||
@@ -4409,26 +4407,29 @@ checksums:
|
||||
content/9: 072b097db5f884122f323c5d8386671c
|
||||
content/10: 58882acf2056c9e54e27f38f1203f0cd
|
||||
content/11: 68d81199ca72ece1c31474f5729f98cd
|
||||
content/12: d152f1dcd6cd068be14a7ae05afd216e
|
||||
content/13: bf918d2d9b62a9ab640371cea0629c28
|
||||
content/14: 9b2ebe8a9c3efa9f14c35f6d71a7a274
|
||||
content/15: fcc7c89bc4c545daecba16f986165f9e
|
||||
content/16: 395dc70853e0c9ca156db72f3156ae36
|
||||
content/17: b5b3cc0a48c0f06fa4c475544be4a0e6
|
||||
content/18: 462ac511233020ce80369b6f834387bf
|
||||
content/19: cad571a6ce02e0807c5c23699b115c17
|
||||
content/20: 50251a58c6c1b448dc9a9ed65d7db7aa
|
||||
content/21: 791148e6bad524eb53286aeea5ddbf24
|
||||
content/22: ec70f2b34ad4b3839ff42a76c0378655
|
||||
content/23: dd4d559eba1a9c83a9166bc491d2b2ac
|
||||
content/24: 6b0f081f8453c427f3b3720d44e62857
|
||||
content/25: 84dc89f2666e7201c72c258cb4c4e2d0
|
||||
content/26: 4ae642d59321118a88ebf4ce8751c05a
|
||||
content/27: 4703a7028a16d9e716631be2a49c72bb
|
||||
content/28: d1c7c19aae4736f403b0df60cb6e48a4
|
||||
content/29: 9e5a786192608844493dfbb6e4100886
|
||||
content/30: 8961e5fb3a49bb48580b23dfd5e053c6
|
||||
content/31: 1022391b9b79b1d2e9f8db789f9c50a2
|
||||
content/12: 95cb1a1f36f0e562d85e0e54f0f439ba
|
||||
content/13: ddaad9625d2ed0f4ec1b96094e7ec7c0
|
||||
content/14: a050d81709025cb6c6c72619c80219c5
|
||||
content/15: 8a7329562f5f1324f94ae0bc9b2b3853
|
||||
content/16: bf918d2d9b62a9ab640371cea0629c28
|
||||
content/17: 9b2ebe8a9c3efa9f14c35f6d71a7a274
|
||||
content/18: fcc7c89bc4c545daecba16f986165f9e
|
||||
content/19: 395dc70853e0c9ca156db72f3156ae36
|
||||
content/20: b5b3cc0a48c0f06fa4c475544be4a0e6
|
||||
content/21: 462ac511233020ce80369b6f834387bf
|
||||
content/22: cad571a6ce02e0807c5c23699b115c17
|
||||
content/23: 50251a58c6c1b448dc9a9ed65d7db7aa
|
||||
content/24: 791148e6bad524eb53286aeea5ddbf24
|
||||
content/25: ec70f2b34ad4b3839ff42a76c0378655
|
||||
content/26: dd4d559eba1a9c83a9166bc491d2b2ac
|
||||
content/27: 6b0f081f8453c427f3b3720d44e62857
|
||||
content/28: 84dc89f2666e7201c72c258cb4c4e2d0
|
||||
content/29: 4ae642d59321118a88ebf4ce8751c05a
|
||||
content/30: 4703a7028a16d9e716631be2a49c72bb
|
||||
content/31: d1c7c19aae4736f403b0df60cb6e48a4
|
||||
content/32: 9e5a786192608844493dfbb6e4100886
|
||||
content/33: 8961e5fb3a49bb48580b23dfd5e053c6
|
||||
content/34: 1022391b9b79b1d2e9f8db789f9c50a2
|
||||
3fd794279590b9d143d409252c8bcf91:
|
||||
meta/title: 439cb79e8dfd7923d35b85cfbb6fd201
|
||||
content/0: dc697d1a69b3cb0152fda60b44bc7da1
|
||||
|
||||
Reference in New Issue
Block a user