Векторный поиск с использованием генеративной модели искусственного интеллекта Gecko на кадре данных

Я хочу выполнить векторный поиск с использованием моделей встраивания генеративного искусственного интеллекта. Я могу сделать это с обычным текстом, вот код

      # Load the text embeddings model
from vertexai.preview.language_models import TextEmbeddingModel
model = TextEmbeddingModel.from_pretrained("textembedding-gecko@001")

# get embeddings for a list of texts
BATCH_SIZE = 5
def get_embeddings_wrapper(texts):

  embs = []
  for i in tqdm.tqdm(range(0, len(texts), BATCH_SIZE)):
    time.sleep(1) # to avoid the quota error
    result = model.get_embeddings(texts[i:i + BATCH_SIZE])
    embs = embs + [e.values for e in result]
  return embs

df = df.assign(embedding=get_embeddings_wrapper(df.title))

Но предположим, что данные представлены в табличном формате в файле csv или в таблице bigquery, которая выглядит следующим образом.

Я хочу выполнить внедрение данных, а затем выполнить векторный поиск, чтобы получить записи для запроса, как показано ниже. (Например, получение трех наиболее подходящих результатов и передача их в LLM для генерации ответа)

  1. Получить идентификатор менеджера для менеджера по названию должностей
  2. Можете ли вы назвать мне должность Джонаса?

Я получил хорошее понимание, используя https://github.com/GoogleCloudPlatform/generative-ai/blob/main/vector-search/intro-textemb-vectorsearch.ipynb

Но его нельзя использовать для табличных данных. Дайте мне знать, если есть какие-либо ссылки или предложения, как это сделать.

0 ответов