Bellek API başvurusu

Bu sayfa, yönetilen aracı belleği için REST API başvurusudur. Yönetilen bellek için uç noktaları, istek alanlarını ve yanıt alanlarını kapsar:

  • Bellek deposu, bellek girdileri için kapsayıcı görevi gören güvenli hale getirilebilen bir Unity Kataloğudur. Depolama oluşturmak ve yönetmek için Bellek deposu API'lerini kullanın.
  • Bellek girişi, bir bellek deposunda depolanan tek bir içerik parçasıdır. Girdileri okumak ve yazmak için Bellek girişi API'lerini kullanın.
  • Konuşma, openAI uyumlu konuşma durumudur (iletiler ve araç çağrıları), bellek deposu tarafından desteklenir ve bir kapsama sabitlenir. Konuşmaları ve öğelerini oluşturmak ve yönetmek için Konuşma API'lerini kullanın.

Prerequisites

API'leri çağırmak için Databricks CLI kullanarak bir OAuth belirteci oluşturun:

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

Bellek deposu API'leri

Bellek deposu, bellek girdileri için kapsayıcı görevi gören güvenli hale getirilebilen bir Unity Kataloğudur. Bellek depoları üç düzeyli adlandırma kullanır: catalog.schema.memory_store_name.

Operation Bitiş noktası Gerekli ayrıcalık
Oluştur POST /api/2.1/unity-catalog/memory-stores CREATE MEMORY STORE üst şemada
Edinin GET /api/2.1/unity-catalog/memory-stores/{full_name} READ MEMORY STORE Mağaza'da
Liste GET /api/2.1/unity-catalog/memory-stores USE SCHEMA üst şemada
Update PATCH /api/2.1/unity-catalog/memory-stores/{full_name} MANAGE Mağaza'da
Delete DELETE /api/2.1/unity-catalog/memory-stores/{full_name} MANAGE Mağaza'da

Bellek deposu oluşturma

Üst şema altında yeni bir bellek deposu oluşturur.

  • Endpoint:POST /api/2.1/unity-catalog/memory-stores
  • Gerekli ayrıcalık: CREATE MEMORY STORE üst şemada
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"
  }'

İstek alanları:

Veri Alanı Türü Zorunlu Açıklama
name string Yes Bellek deposu için kısa ad. 1-255 karakter eşleşmelidir [A-Za-z0-9_-]+. Üst şema içinde benzersiz.
catalog_name string Yes Üst kataloğun adı.
schema_name string Yes Kataloğa göre üst şemanın adı.
description string Hayır Bellek deposunun okunabilir açıklaması.

Bellek deposu alma

Bir bellek deposunu üç parçalı tam adıyla alır.

  • Endpoint:GET /api/2.1/unity-catalog/memory-stores/{full_name}
  • Gerekli ayrıcalık: READ MEMORY STORE mağazada
curl -X GET \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Bellek depolarını listeleme

Bir şemadaki bellek depolarını listeler. Sonuçlar, çağıranın okuyabileceği depolar için filtrelenir.

  • Endpoint:GET /api/2.1/unity-catalog/memory-stores
  • Gerekli ayrıcalık: USE SCHEMA üst şemada
curl -X GET \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores?catalog_name=main&schema_name=default" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Sorgu parametreleri:

Parametre Türü Zorunlu Açıklama
catalog_name string Yes Üst katalog adı.
schema_name string Yes Üst şema adı.
page_token string Hayır Önceki bir yanıttan sayfalandırma belirteci.
max_results integer Hayır Sayfa başına en fazla depo sayısı. Varsayılan değer: 100, en fazla 1000.

Bellek depolarını güncelleştirme

Bellek deposundaki değişebilir alanları güncelleştirir. Şu anda yalnızca description değiştirilebilir.

  • Endpoint:PATCH /api/2.1/unity-catalog/memory-stores/{full_name}
  • Gerekli ayrıcalık: MANAGE mağazada
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"
  }'

Bellek depolarını silme

Bir bellek deposunu ve tüm bellek girdilerini siler.

  • Endpoint:DELETE /api/2.1/unity-catalog/memory-stores/{full_name}
  • Gerekli ayrıcalık: MANAGE mağazada
curl -X DELETE \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/memory-stores/main.default.agent_memory" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Bellek deposu yanıt alanları

Veri Alanı Türü Açıklama
name string Bellek deposunun kısa adı.
catalog_name string Üst katalog adı.
schema_name string Üst şema adı.
description string İnsan tarafından okunabilen bir açıklama.
owner string Mağazanın sahibi olan UC sorumlusu. Oluşturmada ayarlayın.
full_name string Üç parçalı tam ad: catalog.schema.name.
memory_store_id string Sunucu tarafından atanan UUID.
securable_type string Her zaman MEMORY_STORE.
created_at integer Unix dönem milisaniyelerinde oluşturma süresi.
updated_at integer Unix dönem milisaniye cinsinden son güncelleştirme zamanı.
created_by string Mağazayı oluşturan sorumlu.

Bellek girişi API'leri

Bellek girişleri, bir bellek deposunda depolanan tek tek içerik parçalarıdır. Her girdi bir kapsam ve yol ile tanımlanır: scope çağıranın atadığı bir bölüm anahtarıdır (örneğin, bir son kullanıcı kimliği) ve path bu kapsamda başlaması /memories/ gereken geçici bir yoldur (örneğin, /memories/preferences.md). scope her bellek giriş isteğinde gereklidir.

Operation Bitiş noktası Gerekli ayrıcalık
Oluştur POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries WRITE MEMORY STORE Mağaza'da
Edinin GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries:get READ MEMORY STORE Mağaza'da
Liste GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries READ MEMORY STORE Mağaza'da
Update PATCH /api/2.1/unity-catalog/memory-stores/{full_name}/entries WRITE MEMORY STORE Mağaza'da
Delete DELETE /api/2.1/unity-catalog/memory-stores/{full_name}/entries WRITE MEMORY STORE Mağaza'da
Arama yap POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries:search READ MEMORY STORE Mağaza'da

Bellek girdisi oluşturma

Bellek deposunda yeni bir bellek girdisi oluşturur.

  • Endpoint:POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries?scope=<scope>
  • Gerekli ayrıcalık: WRITE MEMORY STORE mağazada

scope bir sorgu parametresidir; istek gövdesi girdinin kendisidir.

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

İstek alanları:

Veri Alanı İçinde Türü Zorunlu Açıklama
scope query string Yes Girdinin ait olduğu ve çağıran tarafından atanan bölüm (örneğin, bir son kullanıcı kimliği).
path body string Yes Kapsam içindeki girişi tanımlayan geçici yol. ile /memories/başlamalıdır. Değişmez.
contents body string Hayır Serbest biçimli bellek metin içeriği.
description body string Hayır Bellek girişinin tek satırlık özeti. Liste yanıtlarında dizin kancası görevi görür.

Bellek girdisi alma

ve scopetarafından path tek bir bellek girdisi alır.

  • Endpoint:GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries:get
  • Gerekli ayrıcalık: READ MEMORY STORE mağazada
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}"

Bellek girdilerini listeleme

Kapsamdaki bellek girdilerini listeler.

  • Endpoint:GET /api/2.1/unity-catalog/memory-stores/{full_name}/entries
  • Gerekli ayrıcalık: READ MEMORY STORE mağazada
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}"

Sorgu parametreleri:

Parametre Türü Zorunlu Açıklama
scope string Yes Girdileri listelemek için kapsam (bölüm).
path_prefix string Hayır Yalnızca yolu bu ön ek ile başlayan girişleri döndürür.
page_size integer Hayır Sayfa başına en fazla girdi sayısı. Sunucu sayfa boyutunu kaplar.
page_token string Hayır Önceki bir yanıttan sayfalandırma belirteci.

Liste yanıtları atlar contents (yalnızca meta veriler) ve daha fazla sayfa kaldığında ekleyin next_page_token .

Bellek girdisini güncelleştirme

ve contentstarafından scope tanımlanan var olan bir girdiye pathtek bir düzenleme işlemi uygular. , veya str_replacetam insertreplace_allolarak birini sağlayın. description düzenlenebilir: girdinin açıklamasını değiştirmek için ayarlayın veya açıklamayı değiştirmeden bırakmak için atlayın.

  • Endpoint:PATCH /api/2.1/unity-catalog/memory-stores/{full_name}/entries
  • Gerekli ayrıcalık: WRITE MEMORY STORE mağazada
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." }
  }'

İşlemleri düzenleme (tam olarak bir tane ayarlayın):

Operation Fields Behavior
replace_all contents Girdinin tüm içeriğinin üzerine yaz.
str_replace old_str, new_str öğesinin tek oluşumunu old_str ile new_str değiştirin (tam olarak bir kez eşleşmelidir).
insert insert_line, insert_text Insert insert_text; insert_line 0 = top, atlanmış = sonuna ekleme.

Bellek girdisi silme

ve scopetarafından path tanımlanan bir bellek girdisini siler.

  • Endpoint:DELETE /api/2.1/unity-catalog/memory-stores/{full_name}/entries
  • Gerekli ayrıcalık: WRITE MEMORY STORE mağazada
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}"

Bellek girdilerini arama

Yol, içerik ve açıklama alanları arasında anahtar sözcüklere göre bellek girdilerini arar.

  • Endpoint:POST /api/2.1/unity-catalog/memory-stores/{full_name}/entries:search
  • Gerekli ayrıcalık: READ MEMORY STORE mağazada
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"
  }'

İstek alanları: scope (gerekli), query (gerekli), path_prefix (isteğe bağlı), top_k (isteğe bağlı; varsayılan değer 10, en fazla 50'tir).

Bellek girişi yanıt alanları

Veri Alanı Türü Açıklama
path string Kapsamı içindeki girişin yumuşak yolu.
contents string Bellek metni. Liste yanıtlarında atlanır.
description string Tek satırlık özet.
scope string Girdinin ait olduğu kapsam (bölüm).
memory_store_name string Üst bellek deposunun üç bölümlü adı.
has_contents boolean Girdinin boş contents olup olmadığı (Liste'de yararlıdır).
create_time string Oluşturma zaman damgası (RFC 3339).
update_time string Son güncelleştirme zaman damgası (RFC 3339).

Konuşma API'leri

Konuşma, OpenAI uyumlu konuşma durumunu (iletiler, araç çağrıları ve diğer öğeler) tek bir kapsam altındaki bir bellek deposunda depolar. Bir konuşmada aracı, oturum durumu sunucu tarafında kalıcı olarak kalır ve yeniden yükler. Her konuşmayı bir bellek deposu (üç bölümlü ad) ve bir scopeile oluşturursunuz ve konuşma işlemleri temel alınan bellek deposuyla aynı ayrıcalıkları gerektirir.

Operation Bitiş noktası Gerekli ayrıcalık
Oluştur POST /api/2.1/unity-catalog/conversations WRITE MEMORY STORE Mağaza'da
Edinin GET /api/2.1/unity-catalog/conversations/{conversation_id} READ MEMORY STORE Mağaza'da
Update POST /api/2.1/unity-catalog/conversations/{conversation_id} WRITE MEMORY STORE Mağaza'da
Delete DELETE /api/2.1/unity-catalog/conversations/{conversation_id} WRITE MEMORY STORE Mağaza'da

Konuşma oluşturma

Bellek deposuna ve kapsama bağlı bir konuşma oluşturur.

  • Endpoint:POST /api/2.1/unity-catalog/conversations
  • Gerekli ayrıcalık: WRITE MEMORY STORE mağazada
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" }
  }'

İstek alanları:

Veri Alanı Türü Zorunlu Açıklama
memory_store object Yes Konuşmanın yedeklenmesi için bellek deposu.
memory_store.name string Yes Bellek deposunun üç bölümden oluşan tam adı: catalog.schema.memory_store.
scope object Yes Konuşmanın sabitlendiği kapsam.
scope.kind string Yes Kapsam türü, örneğin user veya user_defined.
scope.value string Yes Türe özgü kapsam değeri, örneğin son kullanıcı kimliği.
metadata object Hayır Arayan tarafından denetlenen anahtar-değer meta verileri. En fazla 16 tuş; en fazla 64 karakter, en çok 512 karakterlik değerler.
items array Hayır Konuşmayı görmek için ilk OpenAI konuşma öğeleri (en fazla 20). olmayan type öğeler ileti öğeleri olarak depolanır.

Konuşma alma

Bir konuşmayı kimliğine göre alır.

  • Endpoint:GET /api/2.1/unity-catalog/conversations/{conversation_id}
  • Gerekli ayrıcalık: READ MEMORY STORE mağazada
curl -X GET \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Konuşmayı güncelleştirme

Bir konuşmanın metadataöğesini güncelleştirir.

  • Endpoint:POST /api/2.1/unity-catalog/conversations/{conversation_id}
  • Gerekli ayrıcalık: WRITE MEMORY STORE mağazada
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" } }'

Konuşmayı silme

Bir konuşmayı ve öğelerini siler.

  • Endpoint:DELETE /api/2.1/unity-catalog/conversations/{conversation_id}
  • Gerekli ayrıcalık: WRITE MEMORY STORE mağazada
curl -X DELETE \
  "https://${DATABRICKS_HOST}/api/2.1/unity-catalog/conversations/${CONVERSATION_ID}" \
  -H "Authorization: Bearer ${DATABRICKS_TOKEN}"

Konuşma yanıt alanları

Veri Alanı Türü Açıklama
id string Sunucu tarafından atanan konuşma kimliği.
object string Her zaman conversation.
created_at integer Unix dönem saniyelerinde oluşturma süresi.
metadata object Çağıran tarafından sağlanan anahtar-değer meta verileri.

Konuşma öğesi API'leri

Öğeler, konuşma içindeki tek tek iletiler ve araç çağrılarıdır. OpenAI konuşma öğeleri şeklini izler ve OpenAI uyumlu sayfalandırmayı (after, limit, has_more) kullanırlar.

Operation Bitiş noktası Gerekli ayrıcalık
Öğe oluşturma POST /api/2.1/unity-catalog/conversations/{conversation_id}/items WRITE MEMORY STORE Mağaza'da
Öğeyi al GET /api/2.1/unity-catalog/conversations/{conversation_id}/items/{item_id} READ MEMORY STORE Mağaza'da
Liste öğeleri GET /api/2.1/unity-catalog/conversations/{conversation_id}/items READ MEMORY STORE Mağaza'da
Öğeyi sil DELETE /api/2.1/unity-catalog/conversations/{conversation_id}/items/{item_id} WRITE MEMORY STORE Mağaza'da