使用讯飞的词嵌入api时候报错
WARNING - Request error: 11202, {‘header’: {‘code’: 11202, ‘message’: ‘licc failed’, ‘sid’: ‘emb000e121f@dx19376ee09dcb9e0882’}}

原因

大家都是图讯飞免费才用它的,而讯飞免费的api只能1秒钟调用两次,而大多数for循环的速度都会很快很快的调用。

解决方法——使用本地的词嵌入

示例代码

import os
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
from langchain_community.embeddings import HuggingFaceBgeEmbeddings

model_name = "BAAI/bge-large-en-v1.5"
model_kwargs = {'device': 'cpu'}#可能有些显卡,假设你把cpu换成cuda了会出大问题,不要问我怎么知道的 >_<
encode_kwargs = {'normalize_embeddings': True}

EMBEDDING_FUNCTION = HuggingFaceBgeEmbeddings(
    model_name=model_name,
    model_kwargs=model_kwargs,
    encode_kwargs=encode_kwargs,
    show_progress=True
)

input_text = "The meaning of life is 42"
(EMBEDDING_FUNCTION.embed_query(input_text))#这里是一个调用示例

建立好之后你就可以将EMBEDDING_FUNCTION作为词嵌入函数去使用了,如:

Chroma.from_documents(docs, EMBEDDING_FUNCTION, persist_directory=str(vector_db_path))
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐