VectorStoreCollection<TKey,TRecord>.UpsertAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
| Имя | Описание |
|---|---|
| UpsertAsync(IEnumerable<TRecord>, CancellationToken) |
Upserts пакет записей в векторное хранилище. Не гарантирует, что коллекция существует. Если запись уже существует, она обновляется. Если запись не существует, она создается. |
| UpsertAsync(TRecord, CancellationToken) |
Upserts a record в хранилище векторов. Не гарантирует, что коллекция существует. Если запись уже существует, она обновляется. Если запись не существует, она создается. |
UpsertAsync(IEnumerable<TRecord>, CancellationToken)
Upserts пакет записей в векторное хранилище. Не гарантирует, что коллекция существует. Если запись уже существует, она обновляется. Если запись не существует, она создается.
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>
Записи для upsert.
- cancellationToken
- CancellationToken
Мониторинг CancellationToken запросов на отмену. Значение по умолчанию — None.
Возвращаемое значение
Значение Task , которое завершается после того, как записи были обновлены.
Исключения
Команда не выполняется по какой-либо причине.
Комментарии
Точный метод перевернуть пакет зависит от реализации и может отличаться в зависимости от поддержки базы данных.
Аналогичным образом поведение ошибки может различаться в разных базах данных: по возможности пакет должен быть атомарно включен, чтобы все ошибки приводили к откату всего пакета. Если они не поддерживаются, некоторые записи могут быть перестроены, а другие — нет. Если ключевые свойства задаются пользователем, то вся операция upsert является идемпотентной и может быть повторна повторно, если возникает ошибка. Однако если используются созданные в магазине ключи, операция upsert больше не является идемпотентной; В этом случае, если база данных не гарантирует атомарность, повторная попытка может привести к созданию повторяющихся записей.
VectorStoreCollection<TKey,TRecord> Реализации должны реализовать этот метод таким образом, который выполняет внедрение один раз для пакета, а не создание внедрения для каждой записи отдельно. Поэтому реализация по умолчанию, которая UpsertAsync(TRecord, CancellationToken) не предоставляется.
Применяется к
UpsertAsync(TRecord, CancellationToken)
Upserts a record в хранилище векторов. Не гарантирует, что коллекция существует. Если запись уже существует, она обновляется. Если запись не существует, она создается.
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
Запись для upsert.
- cancellationToken
- CancellationToken
Мониторинг CancellationToken запросов на отмену. Значение по умолчанию — None.
Возвращаемое значение
Значение Task , которое завершается после того, как запись была обновлена.
Исключения
Команда не выполняется по какой-либо причине.