最近用

發生錯誤

 

BatchEmbedContentsRequest.model: unexpected model name format

仔細找一下發現是embedding名稱問題

 

 

embedding名稱在這邊可以找到

https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/text-embeddings-api

目前看起來有這些

 

textembedding-gecko@001
textembedding-gecko-multilingual@001
textembedding-gecko@003
text-multilingual-embedding-002
text-embedding-004
text-embedding-005

差別還不太清楚

主要差別是 English models 與 Multilingual models 的差異

textembedding-gecko-multilingual 與 text-multilingual-embedding-002 是Multilingual models 多語言

 

使用範例

 

# RAG Vector embedding 模型
def getVectorstore(vector_dir):
    vectorstore = Chroma(
        collection_name    = 'gemini',
        embedding_function = GoogleGenerativeAIEmbeddings(model = "models/text-embedding-004"),
        persist_directory  = vector_dir,
    )
    return vectorstore

 

為什麼需要 embedding 呢?

因為要做RAG

需要將資料 embedding 放到向量資料庫做查詢

就是這樣囉