|
import asyncio |
|
from infinity_emb import AsyncEngineArray, EngineArgs, AsyncEmbeddingEngine |
|
query = "中国的首都是哪里?" |
|
docs = ["beijing", "shanghai"] |
|
|
|
INSTRUCTION = "Query:" |
|
query = f"{INSTRUCTION} {query}" |
|
|
|
array = AsyncEngineArray.from_args( |
|
[EngineArgs(model_name_or_path = "OpenBMB/UltraRAG-Reranker", engine="torch", dtype="float16", bettertransformer=False, trust_remote_code=True, model_warmup=False)] |
|
) |
|
|
|
async def rerank(engine: AsyncEmbeddingEngine): |
|
async with engine: |
|
ranking, usage = await engine.rerank(query=query, docs=docs) |
|
print(list(zip(ranking, docs))) |
|
|
|
asyncio.run(rerank(array[0])) |