繫線數目

此頁面顯示具體 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

方法 add_messages_async (非同步)

非同步地新增信件到串列中,並為其建立索引。

方法 delete_memory

依 ID 從這個完全相同的繫線刪除類似記憶體的記錄 (例如記憶體、事實、偏好設定或準則)。

範例

thread.delete_memory("456")
0

方法 delete_message

依識別碼從此精確執行緒刪除訊息記錄。

注意事項

刪除訊息只會移除原始訊息記錄。衍生的記憶體不會被刪除,因為擷取的記憶體不會保留每個訊息的來源,因此它們仍然可以搜尋或仍會影響內容卡輸出。使用 OracleAgentMemory.delete_thread() 可將繫線與其相關的訊息和記憶體一起刪除。

範例

thread.delete_message("123")
0

方法 get_context_card

傳回繫線的相關資訊環境卡物件。

在 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().content
True

方法 get_context_card_async (非同步)

非同步傳回執行緒的環境定義卡物件。

方法 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()
bool(summary.content)
True

方法 get_summary_async (非同步)

非同步傳回執行緒的最佳投入力摘要。

注意:delete_message() 只會刪除原始訊息資料列。衍生的記憶卡仍可搜尋或出現在內容卡中。使用 OracleAgentMemory.delete_thread() 可將繫線與其相關的訊息和記憶體一起刪除。

訊息

類別 oracleagentmemory.apis.thread.Message

基礎:object

內容卡

類別 oracleagentmemory.apis.contextcard.ContextCard

基本:ABC

繫線 API 傳回的抽象相關資訊環境卡物件。

property content (摘要)

類別 oracleagentmemory.core.contextcard.OracleContextCard

基本:ContextCard

Oracle 執行緒傳回的內容卡。

特性 content

範例

card = OracleContextCard(summary="ctx")
"<summary>" in card.content and "ctx" in card.content
True

特性 formatted_content

範例

OracleContextCard(summary="").formatted_content
''
card = OracleContextCard(summary="ctx", topics=["travel"])
"<topics>" in card.formatted_content
True

摘要

類別 oracleagentmemory.apis.summary.Summary

基本:ABC

繫線 API 傳回的抽象繫線摘要物件。

property content (摘要)

類別 oracleagentmemory.core.summary.OracleSummary

基本:Summary

Oracle 執行緒傳回的摘要。

範例

summary = OracleSummary(content="Plan the Rome itinerary.")
summary.content
'Plan the Rome itinerary.'
str(summary)
'Plan the Rome itinerary.'

特性 content

範例

OracleSummary(content="Keep the tea preference in mind.").content
'Keep the tea preference in mind.'

特性 formatted_content

範例

OracleSummary(content="Thread recap").formatted_content
'Thread recap'