Referencja API pamięci (dziedzictwo)

Warning

Ta strona jest referencją API REST dla pamięci starszego agenta zarządzanego, która wkrótce zostanie wyłączona. Nie buduj na nim nowych agentów. Dla nowych agentów używaj pamięci agentów.

Ta strona obejmuje punkty końcowe, pola żądań oraz pola odpowiedzi dla starszej pamięci zarządzanej:

  • Magazyn pamięci to zabezpieczany wykaz aparatu Unity, który działa jako kontener dla wpisów pamięci. Użyj interfejsów API magazynu pamięci , aby tworzyć magazyny i zarządzać nimi.
  • Wpis pamięci to pojedynczy element zawartości przechowywany w magazynie pamięci. Interfejsy API wprowadzania pamięci umożliwiają odczytywanie i zapisywanie wpisów.
  • Konwersacja to stan konwersacji zgodny ze standardem OpenAI — komunikaty i wywołania narzędzi — wspierane przez magazyn pamięci i przypięte do zakresu. Użyj interfejsów API konwersacji , aby tworzyć konwersacje i ich elementy oraz zarządzać nimi.

Wymagania wstępne

Wygeneruj token OAuth za pomocą Databricks CLI, aby wywoływać interfejsy API:

databricks auth login --host ${DATABRICKS_HOST}
databricks auth token

Interfejsy API magazynu pamięci

Magazyn pamięci to zabezpieczany wykaz aparatu Unity, który działa jako kontener dla wpisów pamięci. Magazyny pamięci używają nazewnictwa na trzech poziomach: catalog.schema.memory_store_name.

Operation Punkt końcowy Wymagane uprawnienia
Utwórz POST /api/2.1/unity-catalog/memory-stores CREATE MEMORY STORE w schemacie nadrzędnym
Pobierz GET /api/2.1/unity-catalog/memory-stores/{full_name} READ MEMORY STORE w sklepie
Lista GET /api/2.1/unity-catalog/memory-stores USE SCHEMA w schemacie nadrzędnym
Update PATCH /api/2.1/unity-catalog/memory-stores/{full_name} MANAGE w sklepie
Delete DELETE /api/2.1/unity-catalog/memory-stores/{full_name} MANAGE w sklepie

Tworzenie magazynu pamięci

Tworzy nowy magazyn pamięci w schemacie nadrzędnym.

  • Punkt końcowy:POST /api/2.1/unity-catalog/memory-stores
  • Wymagane uprawnienia: CREATE MEMORY STORE w schemacie nadrzędnym
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"
  }'

Pola żądania:

Pole Typ Required Description
name string Yes Krótka nazwa magazynu pamięci. Musi być zgodna [A-Za-z0-9_-]+z znakiem , od 1 do 255 znaków. Unikatowy w schemacie nadrzędnym.
catalog_name string Yes Nazwa wykazu nadrzędnego.
schema_name string Yes Nazwa schematu nadrzędnego względem wykazu.
description string No Czytelny dla człowieka opis magazynu pamięci.

Pobieranie magazynu pamięci

Pobiera magazyn pamięci przy użyciu trzyczęściowej w pełni kwalifikowanej nazwy.

  • Punkt końcowy:GET /api/2.1/unity-catalog/memory-stores/{full_name}
  • Wymagane uprawnienia: READ MEMORY STORE w sklepie
curl -X GET \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Lista magazynów pamięci

Wyświetla listę magazynów pamięci w schemacie. Wyniki są filtrowane w celu przechowywania, które obiekt wywołujący może odczytać.

  • Punkt końcowy:GET /api/2.1/unity-catalog/memory-stores
  • Wymagane uprawnienia: USE SCHEMA w schemacie nadrzędnym
curl -X GET \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores?catalog_name=main&schema_name=default" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Parametry zapytania:

Parametr Typ Required Description
catalog_name string Yes Nazwa katalogu nadrzędnego.
schema_name string Yes Nazwa schematu nadrzędnego.
page_token string No Token stronicowania z poprzedniej odpowiedzi.
max_results integer No Maksymalna liczba sklepów na stronę. Wartość domyślna to 100, maksymalnie 1000.

Aktualizowanie magazynu pamięci

Aktualizuje pola modyfikowalne w magazynie pamięci. Obecnie jest tylko description modyfikowalne.

  • Punkt końcowy:PATCH /api/2.1/unity-catalog/memory-stores/{full_name}
  • Wymagane uprawnienia: MANAGE w sklepie
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"
  }'

Usuwanie magazynu pamięci

Usuwa magazyn pamięci i wszystkie jego wpisy pamięci.

  • Punkt końcowy:DELETE /api/2.1/unity-catalog/memory-stores/{full_name}
  • Wymagane uprawnienia: MANAGE w sklepie
curl -X DELETE \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Pola odpowiedzi magazynu pamięci

Pole Typ Description
name string Krótka nazwa magazynu pamięci.
catalog_name string Nazwa katalogu nadrzędnego.
schema_name string Nazwa schematu nadrzędnego.
description string Czytelny dla człowieka opis.
owner string Podmiot zabezpieczeń UC, który jest właścicielem sklepu. Ustaw wartość przy tworzeniu.
full_name string Trzyczęściowa w pełni kwalifikowana nazwa: catalog.schema.name.
memory_store_id string Identyfikator UUID przypisany przez serwer.
securable_type string Zawsze MEMORY_STORE.
created_at integer Czas tworzenia w milisekundach systemu Unix.
updated_at integer Czas ostatniej aktualizacji w milisekundach systemu Unix.
created_by string Podmiot zabezpieczeń, który utworzył magazyn.

Interfejsy API wprowadzania pamięci

Wpisy pamięci to poszczególne elementy zawartości przechowywane w magazynie pamięci. Każdy wpis jest identyfikowany przez zakres i ścieżkę: scope to klucz partycji przypisywany przez obiekt wywołujący (na przykład identyfikator użytkownika końcowego) i path jest ścieżką nietrwałą w tym zakresie, który musi zaczynać się od /memories/ (na przykład /memories/preferences.md). scope jest wymagany w każdym żądaniu wprowadzania pamięci.

Operation Punkt końcowy Wymagane uprawnienia
Utwórz POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries WRITE MEMORY STORE w sklepie
Pobierz GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries:get READ MEMORY STORE w sklepie
Lista GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries READ MEMORY STORE w sklepie
Update PATCH /api/2.1/unity-catalog/memory-stores/{full_name}/entries WRITE MEMORY STORE w sklepie
Delete DELETE /api/2.1/unity-catalog/memory-stores/{full_name}/entries WRITE MEMORY STORE w sklepie
Szukaj POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries:search READ MEMORY STORE w sklepie

Tworzenie wpisu pamięci

Tworzy nowy wpis pamięci w magazynie pamięci.

  • Punkt końcowy:POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries?scope=<scope>
  • Wymagane uprawnienia: WRITE MEMORY STORE w sklepie

scope jest parametrem zapytania; treść żądania jest samym wpisem.

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"
  }'

Pola żądania:

Pole W Typ Required Description
scope kwerenda string Yes Partycja, do której należy wpis, przypisany przez obiekt wywołujący (na przykład identyfikator użytkownika końcowego).
path body string Yes Ścieżka nietrwała identyfikująca wpis w zakresie. Musi zaczynać się od /memories/. Niezmienne.
contents body string No Zawartość tekstowa wolnej pamięci.
description body string No Jednowierszowe podsumowanie wpisu pamięci. Służy jako punkt zaczepienia indeksu w odpowiedziach listy.

Pobieranie wpisu pamięci

Pobiera pojedynczy wpis pamięci według scope i path.

  • Punkt końcowy:GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries:get
  • Wymagane uprawnienia: READ MEMORY STORE w sklepie
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}"

Wyświetlanie listy wpisów pamięci

Wyświetla listę wpisów pamięci w zakresie.

  • Punkt końcowy:GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries
  • Wymagane uprawnienia: READ MEMORY STORE w sklepie
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}"

Parametry zapytania:

Parametr Typ Required Description
scope string Yes Zakres (partycja) do wyświetlania listy wpisów z.
path_prefix string No Zwracaj tylko wpisy, których ścieżka zaczyna się od tego prefiksu.
page_size integer No Maksymalna liczba wpisów na stronę. Serwer wywróci rozmiar strony.
page_token string No Token stronicowania z poprzedniej odpowiedzi.

Pomiń contents odpowiedzi (tylko metadane) i uwzględnij next_page_token , gdy pozostanie więcej stron.

Aktualizowanie wpisu pamięci

Stosuje jedną operację edycji do istniejącego wpisu contents, zidentyfikowanego przez scope i path. Podaj dokładnie jedną z wartości str_replace, insertlub replace_all. description element jest edytowalny: ustaw go, aby zamienić opis wpisu lub pominąć go, aby pozostawić opis bez zmian.

  • Punkt końcowy:PATCH /api/2.1/unity-catalog/memory-stores/{full_name}/entries
  • Wymagane uprawnienia: WRITE MEMORY STORE w sklepie
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." }
  }'

Edytuj operacje (ustaw dokładnie jedno):

Operation Fields Behavior
replace_all contents Zastąp pełną zawartość wpisu.
str_replace old_str, new_str Zastąp pojedyncze wystąpienie elementu old_str elementem new_str (musi być dokładnie jednokrotne).
insert insert_line, insert_text Wstaw insert_text; insert_line 0 = top, pominięty = dołącz do końca.

Usuwanie wpisu pamięci

Usuwa wpis pamięci zidentyfikowany przez scope i path.

  • Punkt końcowy:DELETE /api/2.1/unity-catalog/memory-stores/{full_name}/entries
  • Wymagane uprawnienia: WRITE MEMORY STORE w sklepie
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}"

Przeszukiwanie wpisów pamięci

Wyszukuje wpisy pamięci według słowa kluczowego między polami ścieżki, zawartości i opisu.

  • Punkt końcowy:POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries:search
  • Wymagane uprawnienia: READ MEMORY STORE w sklepie
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"
  }'

Pola żądania: scope (wymagane), (wymagane), querypath_prefix (opcjonalne), top_k (opcjonalne; wartości domyślne to 10, maksymalnie 50).

Pola odpowiedzi wprowadzania pamięci

Pole Typ Description
path string Nietrwała ścieżka wpisu w zakresie.
contents string Tekst pamięci. Pominięto w obszarze Odpowiedzi na listę.
description string Podsumowanie jednowierszowe.
scope string Zakres (partycja), do którego należy wpis.
memory_store_name string Trzyczęściowa nazwa nadrzędnego magazynu pamięci.
has_contents boolean Czy wpis ma wartość niepustą contents (przydatną na liście).
create_time string Sygnatura czasowa tworzenia (RFC 3339).
update_time string Sygnatura czasowa ostatniej aktualizacji (RFC 3339).

Interfejsy API konwersacji

Konwersacja przechowuje stan konwersacji zgodny ze standardem OpenAI — wiadomości, wywołania narzędzi i inne elementy — w magazynie pamięci w ramach jednego zakresu. W przypadku konwersacji agent utrwala i ponownie ładuje stronę serwera stanu sesji. Każda konwersacja jest tworzona względem magazynu pamięci (nazwa trzyczęściowa) oraz scopeoperacje konwersacji , a operacje konwersacji wymagają tych samych uprawnień co bazowy magazyn pamięci.

Operation Punkt końcowy Wymagane uprawnienia
Utwórz POST /api/2.1/unity-catalog/conversations WRITE MEMORY STORE w sklepie
Pobierz GET /api/2.1/unity-catalog/conversations/{conversation_id} READ MEMORY STORE w sklepie
Update POST /api/2.1/unity-catalog/conversations/{conversation_id} WRITE MEMORY STORE w sklepie
Delete DELETE /api/2.1/unity-catalog/conversations/{conversation_id} WRITE MEMORY STORE w sklepie

Tworzenie konwersacji

Tworzy konwersację powiązaną z magazynem pamięci i zakresem.

  • Punkt końcowy:POST /api/2.1/unity-catalog/conversations
  • Wymagane uprawnienia: WRITE MEMORY STORE w sklepie
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" }
  }'

Pola żądania:

Pole Typ Required Description
memory_store object Yes Magazyn pamięci— tworzenie kopii zapasowej konwersacji.
memory_store.name string Yes Trzyczęściowa w pełni kwalifikowana nazwa magazynu pamięci: catalog.schema.memory_store.
scope object Yes Zakres konwersacji jest przypięty do.
scope.kind string Yes Rodzaj zakresu, na przykład user lub user_defined.
scope.value string Yes Wartość zakresu specyficznego dla rodzaju, na przykład identyfikator użytkownika końcowego.
metadata object No Metadane klucza kontrolowane przez obiekt wywołujący. Maksymalnie 16 kluczy; klucze do 64 znaków, wartości do 512 znaków.
items array No Początkowe elementy konwersacji OpenAI w celu zainicjowania konwersacji (do 20). Elementy bez elementu type są przechowywane jako elementy komunikatów.

Uzyskiwanie konwersacji

Pobiera konwersację według jego identyfikatora.

  • Punkt końcowy:GET /api/2.1/unity-catalog/conversations/{conversation_id}
  • Wymagane uprawnienia: READ MEMORY STORE w sklepie
curl -X GET \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Aktualizowanie konwersacji

Aktualizuje konwersację metadata.

  • Punkt końcowy:POST /api/2.1/unity-catalog/conversations/{conversation_id}
  • Wymagane uprawnienia: WRITE MEMORY STORE w sklepie
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" } }'

Usuwanie konwersacji

Usuwa konwersację i jej elementy.

  • Punkt końcowy:DELETE /api/2.1/unity-catalog/conversations/{conversation_id}
  • Wymagane uprawnienia: WRITE MEMORY STORE w sklepie
curl -X DELETE \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Pola odpowiedzi konwersacji

Pole Typ Description
id string Identyfikator konwersacji przypisanej przez serwer.
object string Zawsze conversation.
created_at integer Czas tworzenia w sekundach epoki unix.
metadata object Metadane wartości klucza dostarczone przez obiekt wywołujący.

Interfejsy API elementów konwersacji

Elementy to poszczególne wiadomości i wywołania narzędzi w konwersacji. Są one zgodne z kształtem elementów konwersacji OpenAI i używają stronicowania zgodnego z interfejsem OpenAI (after, limit, has_more).

Operation Punkt końcowy Wymagane uprawnienia
Tworzenie elementów POST /api/2.1/unity-catalog/conversations/{conversation_id}/items WRITE MEMORY STORE w sklepie
Pobierz element GET /api/2.1/unity-catalog/conversations/{conversation_id}/items/{item_id} READ MEMORY STORE w sklepie
Elementy listy GET /api/2.1/unity-catalog/conversations/{conversation_id}/items READ MEMORY STORE w sklepie
Usuń element DELETE /api/2.1/unity-catalog/conversations/{conversation_id}/items/{item_id} WRITE MEMORY STORE w sklepie