Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Seite ist die REST-API-Referenz für verwalteten Agent-Speicher. Sie deckt die Endpunkte, Anforderungsfelder und Antwortfelder für verwalteten Speicher ab:
- Ein Speicher ist ein Unity-Katalog sicherungsfähig, der als Container für Speichereinträge fungiert. Verwenden Sie die Speicherspeicher-APIs , um Speicher zu erstellen und zu verwalten.
- Ein Speichereintrag ist ein einzelner Inhalt, der in einem Speicher gespeichert ist. Verwenden Sie die Speichereingabe-APIs zum Lesen und Schreiben von Einträgen.
- Eine Unterhaltung ist openAI-kompatibler Unterhaltungszustand – Nachrichten und Toolanrufe – unterstützt durch einen Speicher und angeheftet an einen Bereich. Verwenden Sie die Unterhaltungs-APIs , um Unterhaltungen und deren Elemente zu erstellen und zu verwalten.
Voraussetzungen
Generieren Sie ein OAuth-Token mithilfe der Databricks CLI, um die APIs aufzurufen:
databricks auth login --host ${DATABRICKS_HOST}
databricks auth token
Speicher-APIs
Ein Speicher ist ein Unity-Katalog sicherungsfähig, der als Container für Speichereinträge fungiert. Speicher verwenden die Benennung auf drei Ebenen: catalog.schema.memory_store_name.
| Vorgang | Endpunkt | Erforderliche Berechtigungen |
|---|---|---|
| Erstellen | POST /api/2.1/unity-catalog/memory-stores |
CREATE MEMORY STORE im übergeordneten Schema |
| Get | GET /api/2.1/unity-catalog/memory-stores/{full_name} |
READ MEMORY STORE im Store |
| List | GET /api/2.1/unity-catalog/memory-stores |
USE SCHEMA im übergeordneten Schema |
| Update | PATCH /api/2.1/unity-catalog/memory-stores/{full_name} |
MANAGE im Store |
| Löschen | DELETE /api/2.1/unity-catalog/memory-stores/{full_name} |
MANAGE im Store |
Erstellen eines Speichers
Erstellt einen neuen Speicherspeicher unter einem übergeordneten Schema.
-
Endpunkt:
POST /api/2.1/unity-catalog/memory-stores -
Erforderliche Berechtigungen:
CREATE MEMORY STOREim übergeordneten Schema
curl -X POST "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"name": "agent_memory",
"catalog_name": "main",
"schema_name": "default",
"description": "Memory store for customer support agents"
}'
Anforderungsfelder:
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
name |
string |
Ja | Kurzname für den Speicher. Muss mit 1 bis 255 Zeichen übereinstimmen [A-Za-z0-9_-]+. Eindeutig im übergeordneten Schema. |
catalog_name |
string |
Ja | Name des übergeordneten Katalogs. |
schema_name |
string |
Ja | Name des übergeordneten Schemas relativ zum Katalog. |
description |
string |
No | Lesbare Beschreibung des Speichers. |
Abrufen eines Speichers
Ruft einen Speicher mit seinem dreiteiligen vollqualifizierten Namen ab.
-
Endpunkt:
GET /api/2.1/unity-catalog/memory-stores/{full_name} -
Erforderliche Berechtigungen:
READ MEMORY STOREim Store
curl -X GET \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Liste von Speicherplätzen
Listet Speicher in einem Schema auf. Ergebnisse werden gefiltert, um den Aufrufer lesen zu können.
-
Endpunkt:
GET /api/2.1/unity-catalog/memory-stores -
Erforderliche Berechtigungen:
USE SCHEMAim übergeordneten Schema
curl -X GET \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores?catalog_name=main&schema_name=default" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Abfrageparameter:
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
catalog_name |
string |
Ja | Name des übergeordneten Katalogs. |
schema_name |
string |
Ja | Übergeordneter Schemaname. |
page_token |
string |
No | Paginierungstoken aus einer vorherigen Antwort. |
max_results |
integer |
No | Maximale Anzahl von Speichern pro Seite. Der Standardwert ist 100, max. 1000. |
Aktualisieren eines Speichers
Aktualisiert veränderbare Felder in einem Speicher. Derzeit ist nur description änderbar.
-
Endpunkt:
PATCH /api/2.1/unity-catalog/memory-stores/{full_name} -
Erforderliche Berechtigungen:
MANAGEim Store
curl -X PATCH \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"memory_store": {
"description": "Updated description for the memory store"
},
"update_mask": "description"
}'
Löschen eines Speichers
Löscht einen Speicher und alle zugehörigen Speichereinträge.
-
Endpunkt:
DELETE /api/2.1/unity-catalog/memory-stores/{full_name} -
Erforderliche Berechtigungen:
MANAGEim Store
curl -X DELETE \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Antwortfelder für Speicherspeicher
| Feld | Typ | Beschreibung |
|---|---|---|
name |
string |
Kurzer Name des Speichers. |
catalog_name |
string |
Name des übergeordneten Katalogs. |
schema_name |
string |
Übergeordneter Schemaname. |
description |
string |
Menschenlesbare Beschreibung. |
owner |
string |
UC-Prinzipal, der den Speicher besitzt. Beim Erstellen festlegen. |
full_name |
string |
Dreiteiliger vollqualifizierter Name: catalog.schema.name. |
memory_store_id |
string |
Server zugewiesene UUID. |
securable_type |
string |
Immer MEMORY_STORE. |
created_at |
integer |
Schöpfungszeit in Unix-Epoche Millisekunden. |
updated_at |
integer |
Letzte Aktualisierungszeit in Unix Epoche Millisekunden. |
created_by |
string |
Prinzipal, der den Speicher erstellt hat. |
Speichereingabe-APIs
Speichereinträge sind die einzelnen Inhalte, die in einem Speicher gespeichert sind. Jeder Eintrag wird durch einen Bereich und einen Pfad identifiziert: scope ist ein Partitionsschlüssel, den der Aufrufer zuweist (z. B. eine Endbenutzer-ID), und path es handelt sich um einen weichen Pfad innerhalb dieses Bereichs, der mit /memories/ diesem Bereich beginnen muss (z /memories/preferences.md. B. ).
scope ist für jede Speichereingabeanforderung erforderlich.
| Vorgang | Endpunkt | Erforderliche Berechtigungen |
|---|---|---|
| Erstellen | POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries |
WRITE MEMORY STORE im Store |
| Get | GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries:get |
READ MEMORY STORE im Store |
| List | GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries |
READ MEMORY STORE im Store |
| Update | PATCH /api/2.1/unity-catalog/memory-stores/{full_name}/entries |
WRITE MEMORY STORE im Store |
| Löschen | DELETE /api/2.1/unity-catalog/memory-stores/{full_name}/entries |
WRITE MEMORY STORE im Store |
| Suchen | POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries:search |
READ MEMORY STORE im Store |
Erstellen eines Speichereintrags
Erstellt einen neuen Speichereintrag in einem Speicher.
-
Endpunkt:
POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries?scope=<scope> -
Erforderliche Berechtigungen:
WRITE MEMORY STOREim Store
scope ist ein Abfrageparameter; Der Anforderungstext ist der Eintrag selbst.
curl -X POST \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory/entries?scope=user-42" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"path": "/memories/preferences.md",
"contents": "The user prefers responses in English and uses formal tone.",
"description": "User language and tone preferences"
}'
Anforderungsfelder:
| Feld | In | Typ | Erforderlich | Beschreibung |
|---|---|---|---|---|
scope |
Abfrage | string |
Ja | Partitionieren Sie den Eintrag, dem der Aufrufer zugewiesen ist (z. B. eine Endbenutzer-ID). |
path |
body | string |
Ja | Weicher Pfad, der den Eintrag innerhalb des Bereichs identifiziert. Muss mit /memories/ beginnen. Unveränderlich. |
contents |
body | string |
No | Freiform-Textinhalt. |
description |
body | string |
No | Einzeilige Zusammenfassung des Speichereintrags. Dient als Index-Hook in Listenantworten. |
Abrufen eines Speichereintrags
Ruft einen einzelnen Speichereintrag nach scope und path.
-
Endpunkt:
GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries:get -
Erforderliche Berechtigungen:
READ MEMORY STOREim Store
curl -X GET \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory/entries:get?scope=user-42&path=/memories/preferences.md" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Auflisten von Speichereinträgen
Listet Speichereinträge in einem Bereich auf.
-
Endpunkt:
GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries -
Erforderliche Berechtigungen:
READ MEMORY STOREim Store
curl -X GET \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory/entries?scope=user-42" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Abfrageparameter:
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
scope |
string |
Ja | Bereich (Partition) auf Listeneinträge aus. |
path_prefix |
string |
No | Gibt nur Einträge zurück, deren Pfad mit diesem Präfix beginnt. |
page_size |
integer |
No | Maximale Anzahl von Einträgen pro Seite. Der Server kapitiert die Seitengröße. |
page_token |
string |
No | Paginierungstoken aus einer vorherigen Antwort. |
Listenantworten werden weggelassen contents (nur Metadaten), und fügen Sie ein next_page_token , wenn weitere Seiten verbleiben.
Aktualisieren eines Speichereintrags
Wendet einen einzelnen Bearbeitungsvorgang auf die von und zu einem vorhandenen Eintrag contentsidentifizierten scope Einträge pathan. Geben Sie genau einen von str_replace, insert, oder replace_all.
description kann bearbeitet werden: Legen Sie sie fest, um die Beschreibung des Eintrags zu ersetzen, oder lassen Sie sie aus, um die Beschreibung unverändert zu lassen.
-
Endpunkt:
PATCH /api/2.1/unity-catalog/memory-stores/{full_name}/entries -
Erforderliche Berechtigungen:
WRITE MEMORY STOREim Store
curl -X PATCH \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory/entries" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"scope": "user-42",
"path": "/memories/preferences.md",
"replace_all": { "contents": "The user prefers responses in Spanish and uses casual tone." }
}'
Bearbeitungsvorgänge (genau eins festlegen):
| Vorgang | Felder | Behavior |
|---|---|---|
replace_all |
contents |
Überschreiben Sie den vollständigen Inhalt des Eintrags. |
str_replace |
old_str, new_str |
Ersetzen Sie das einzelne Vorkommen von old_str "durch" new_str (muss genau einmal übereinstimmen). |
insert |
insert_line, insert_text |
Insert insert_text; insert_line 0 = top, omitted = append to the end. |
Löschen eines Speichereintrags
Löscht einen Speichereintrag, der durch scope und path.
-
Endpunkt:
DELETE /api/2.1/unity-catalog/memory-stores/{full_name}/entries -
Erforderliche Berechtigungen:
WRITE MEMORY STOREim Store
curl -X DELETE \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory/entries?scope=user-42&path=/memories/preferences.md" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Durchsuchen von Speichereinträgen
Durchsucht Speichereinträge nach Schlüsselwort über Pfad-, Inhalts- und Beschreibungsfelder hinweg.
-
Endpunkt:
POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries:search -
Erforderliche Berechtigungen:
READ MEMORY STOREim Store
curl -X POST \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory/entries:search" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"scope": "user-42",
"query": "language preferences"
}'
Anforderungsfelder: scope (erforderlich), query (erforderlich), (optional), path_prefixtop_k (optional; Standardwert ist 10, max. 50).
Antwortfelder für Speichereingaben
| Feld | Typ | Beschreibung |
|---|---|---|
path |
string |
Weicher Pfad des Eintrags innerhalb seines Gültigkeitsbereichs. |
contents |
string |
Speichertext. In Listenantworten nicht angegeben. |
description |
string |
Einzeilige Zusammenfassung. |
scope |
string |
Bereich (Partition) der Eintrag gehört. |
memory_store_name |
string |
Dreiteiliger Name des übergeordneten Speicherspeichers. |
has_contents |
boolean |
Gibt an, ob der Eintrag nicht leer contents ist (nützlich in der Liste). |
create_time |
string |
Erstellungszeitstempel (RFC 3339). |
update_time |
string |
Zeitstempel der letzten Aktualisierung (RFC 3339). |
Unterhaltungs-APIs
Eine Unterhaltung speichert den OpenAI-kompatiblen Unterhaltungszustand – Nachrichten, Toolanrufe und andere Elemente – in einem Speicher unter einem einzigen Bereich. Bei einer Unterhaltung wird ein Agent auf serverseitiger Sitzungszustand beibehalten und neu geladen. Sie erstellen jede Unterhaltung anhand eines Speicherspeichers (dreiteiliger Name) und einer scopeUnterhaltung, und Unterhaltungsvorgänge erfordern dieselben Berechtigungen wie der zugrunde liegende Speicher.
| Vorgang | Endpunkt | Erforderliche Berechtigungen |
|---|---|---|
| Erstellen | POST /api/2.1/unity-catalog/conversations |
WRITE MEMORY STORE im Store |
| Get | GET /api/2.1/unity-catalog/conversations/{conversation_id} |
READ MEMORY STORE im Store |
| Update | POST /api/2.1/unity-catalog/conversations/{conversation_id} |
WRITE MEMORY STORE im Store |
| Löschen | DELETE /api/2.1/unity-catalog/conversations/{conversation_id} |
WRITE MEMORY STORE im Store |
Erstellen einer Unterhaltung
Erstellt eine Unterhaltung, die an einen Speicher und einen Bereich gebunden ist.
-
Endpunkt:
POST /api/2.1/unity-catalog/conversations -
Erforderliche Berechtigungen:
WRITE MEMORY STOREim Store
curl -X POST "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"memory_store": { "name": "main.default.support_agent_memory" },
"scope": { "kind": "user", "value": "user-123" },
"metadata": { "source": "support-chat" }
}'
Anforderungsfelder:
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
memory_store |
object |
Ja | Speicherspeicher für die Sicherung der Unterhaltung. |
memory_store.name |
string |
Ja | Dreiteiliger vollqualifizierter Name des Speichers: catalog.schema.memory_store. |
scope |
object |
Ja | Bereich der Unterhaltung wird angeheftet. |
scope.kind |
string |
Ja | Bereichsart, z user . B. oder user_defined. |
scope.value |
string |
Ja | Typspezifischer Bereichswert, z. B. eine Endbenutzer-ID. |
metadata |
object |
No | Metadaten für anrufergesteuerte Schlüsselwert. Bis zu 16 Tasten; Tasten bis zu 64 Zeichen, Werte bis zu 512 Zeichen. |
items |
array |
No | Anfängliche OpenAI-Unterhaltungselemente, um die Unterhaltung zu starten (bis zu 20). Elemente ohne eine type Nachricht werden als Nachrichtenelemente gespeichert. |
Abrufen einer Unterhaltung
Ruft eine Unterhaltung anhand ihrer ID ab.
-
Endpunkt:
GET /api/2.1/unity-catalog/conversations/{conversation_id} -
Erforderliche Berechtigungen:
READ MEMORY STOREim Store
curl -X GET \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Aktualisieren einer Unterhaltung
Aktualisiert die Unterhaltungen metadata.
-
Endpunkt:
POST /api/2.1/unity-catalog/conversations/{conversation_id} -
Erforderliche Berechtigungen:
WRITE MEMORY STOREim Store
curl -X POST \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{ "metadata": { "source": "support-chat", "resolved": "true" } }'
Löschen einer Unterhaltung
Löscht eine Unterhaltung und deren Elemente.
-
Endpunkt:
DELETE /api/2.1/unity-catalog/conversations/{conversation_id} -
Erforderliche Berechtigungen:
WRITE MEMORY STOREim Store
curl -X DELETE \
"https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}"
Unterhaltungsantwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
id |
string |
Server zugewiesene Unterhaltungs-ID. |
object |
string |
Immer conversation. |
created_at |
integer |
Schöpfungszeit in Unix-Epoche Sekunden. |
metadata |
object |
Vom Aufrufer bereitgestellte Schlüsselwertmetadaten. |
Unterhaltungselement-APIs
Elemente sind die einzelnen Nachrichten und Toolaufrufe innerhalb einer Unterhaltung. Sie folgen dem OpenAI-Unterhaltungselemente-Shape und verwenden openAI-kompatible Paginierung (after, limit, has_more).
| Vorgang | Endpunkt | Erforderliche Berechtigungen |
|---|---|---|
| Erstellen von Elementen | POST /api/2.1/unity-catalog/conversations/{conversation_id}/items |
WRITE MEMORY STORE im Store |
| Element abrufen | GET /api/2.1/unity-catalog/conversations/{conversation_id}/items/{item_id} |
READ MEMORY STORE im Store |
| Elemente auflisten | GET /api/2.1/unity-catalog/conversations/{conversation_id}/items |
READ MEMORY STORE im Store |
| Delete item (Element löschen) | DELETE /api/2.1/unity-catalog/conversations/{conversation_id}/items/{item_id} |
WRITE MEMORY STORE im Store |