語言

VectorStoreCollection<TKey,TRecord>.UpsertAsync 方法

定義

多載

名稱 Description
UpsertAsync(IEnumerable<TRecord>, CancellationToken)

將一批紀錄上傳到向量儲存庫。 但這並不保證該收藏品存在。 如果該紀錄已經存在,則會進行更新。 如果該紀錄不存在,則會被建立。

UpsertAsync(TRecord, CancellationToken)

將記錄上傳到 vector store。 但這並不保證該收藏品存在。 如果該紀錄已經存在,則會進行更新。 如果該紀錄不存在,則會被建立。

UpsertAsync(IEnumerable<TRecord>, CancellationToken)

來源:
VectorStoreCollection.cs

將一批紀錄上傳到向量儲存庫。 但這並不保證該收藏品存在。 如果該紀錄已經存在,則會進行更新。 如果該紀錄不存在,則會被建立。

public abstract System.Threading.Tasks.Task UpsertAsync(System.Collections.Generic.IEnumerable<TRecord> records, System.Threading.CancellationToken cancellationToken = default);
abstract member UpsertAsync : seq<'Record (requires 'Record : null)> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public MustOverride Function UpsertAsync (records As IEnumerable(Of TRecord), Optional cancellationToken As CancellationToken = Nothing) As Task

參數

records
IEnumerable<TRecord>

記錄要上去。

cancellationToken
CancellationToken

CancellationToken他們需要監控取消申請。 預設值為 None。

傳回

Task當紀錄被提升時,A就完成了。

例外狀況

指令因任何原因無法執行。

備註

上傳批次的具體方法依實作而異,且會依資料庫支援而異。

同樣地,錯誤行為在不同資料庫間也可能有所不同:盡可能,批次應以原子方式進行上傳,以便任何錯誤導致整個批次被回滾。 若不支援,有些紀錄可能會被上貼,而另一些則沒有。 如果使用者設定了關鍵屬性,整個 upsert 操作就是冪등 的,且在發生錯誤時可以重新嘗試。 然而,若使用儲存產生的金鑰,upsert 操作不再是冪元的;在這種情況下,如果資料庫無法保證原子性,重試可能會導致重複紀錄產生。

實 VectorStoreCollection<TKey,TRecord> 作時應以一次嵌入產生的方式實作此方法,而非為每筆記錄分別產生嵌入。 這也是為什麼沒有提供預設的呼叫 UpsertAsync(TRecord, CancellationToken) 實作。

適用於

UpsertAsync(TRecord, CancellationToken)

來源:
VectorStoreCollection.cs

將記錄上傳到 vector store。 但這並不保證該收藏品存在。 如果該紀錄已經存在,則會進行更新。 如果該紀錄不存在,則會被建立。

public abstract System.Threading.Tasks.Task UpsertAsync(TRecord record, System.Threading.CancellationToken cancellationToken = default);
abstract member UpsertAsync : 'Record * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public MustOverride Function UpsertAsync (record As TRecord, Optional cancellationToken As CancellationToken = Nothing) As Task

參數

record
TRecord

紀錄要被提升。

cancellationToken
CancellationToken

CancellationToken他們需要監控取消申請。 預設值為 None。

傳回

Task A在紀錄被提升時完成。

例外狀況

指令因任何原因無法執行。

適用於