スレッド

このページでは、開発者向けのメッセージ・ヘルパー・タイプとともに、具体的なOracleスレッド・ハンドルを示します。

Oracleスレッド

クラス oracleagentmemory.core.OracleThread

ベース: IThread

Oracleストアに支えられたスレッド。

この実装では、スレッド・メッセージと手動で追加したメモリーの両方を埋め込んで格納し、格納されているすべてのレコードの類似性検索をサポートします。

ノート:

新規スレッド・ハンドルを作成します。

from oracleagentmemory.core import OracleAgentMemory
db_pool = ...
client = OracleAgentMemory(connection=db_pool, embedder=embedder)
thread = client.create_thread(
    thread_id="c1",
    llm=llm,
    enable_context_summary=True,
)
len(thread.add_messages([{"role": "user", "content": "I love pizza."}]))
1

メソッド add_memory

手動メモリー・エントリを追加し、索引付けします。

thread.add_memory("Remember this preference", memory_id="mem-thread-docs")
'mem-thread-docs'

メソッド add_messages

メッセージをスレッドに追加し、インデックスを作成します。

len(thread.add_messages([{"role": "user", "content": "Thread message from docs"}]))
1

method add_messages_async (非同期)

スレッドにメッセージを非同期に追加し、インデックスを作成します。

メソッド delete_memory

識別子によって、この正確なスレッドからメモリー・レコードを削除します。

thread.delete_memory("456")
0

メソッド delete_message

識別子によって、この正確なスレッドからメッセージ・レコードを削除します。

ノート:

削除に成功すると、派生したスレッドサマリー状態がクリアされるため、あとでサマリーおよびコンテキストカードの呼び出しが残りのトランスクリプトから再構築されます。導出されたメモリーは、現在メッセージごとの来歴を保持していないため、自動的に削除されません。

thread.delete_message("123")
0

メソッド get_context_card

スレッドのXMLのようなコンテキスト・カードを返します。

LLMがバックアップした実装でリモート・ネットワークI/Oを実行できる場合は、get_context_card_asyncを優先します。

ノート:

これは、スレッドのデフォルトの検索スコープをexact_thread_match=Falseとともに使用するため、同じユーザー/エージェントの他のスレッドからの関連メモリーが含まれる場合があります。

thread.add_memory("User likes pizza", memory_id="mem-context-docs")
'mem-context-docs'
len(thread.add_messages([{"role": "user", "content": "Tell me about pizza"}]))
1
"User likes pizza" in thread.get_context_card()
True

method get_context_card_async (非同期)

スレッドのXMLのようなコンテキスト・カードを非同期で返します。

メソッド get_messages

このスレッドの格納されたメッセージを返します。

len(thread.add_messages([{"role": "user", "content": "Stored message example"}]))
1
messages = thread.get_messages()
messages[-1].content
'Stored message example'

メソッド get_summary

スレッドのベスト・エフォート・サマリーを返します。

LLMがバックアップした実装でリモート・ネットワークI/Oを実行できる場合は、get_summary_asyncを優先します。

len(thread.add_messages([{"role": "assistant", "content": "Summary source message"}]))
1
summary = thread.get_summary()
len(summary) >= 1
True

method get_summary_async (非同期)

スレッドのベスト・エフォート・サマリーを非同期で返します。

メッセージ

クラス oracleagentmemory.apis.thread.Message

ベース: object