Skip to main content

No project description provided

Project description

積木塊 Similarity Ranker v1.0.0 by Bowen Chiu

  • 找到與給定查詢句子 v.s. 最相似的嵌入向量
  • 這東西可以用來做任意 .txt & .pt 遞迴子目錄的相似度比對
  • 找出排名最相似的 top 10 輸出 .json
  • 使用的是 Hugging Face Transformers 的 paraphrase-multilingual-MiniLM-L12-v2 模型。

環境設置

在開始之前,首先確保你已經安裝了以下的 Python 庫:

python3 -m pip install similarity-ranker

使用方法

作為命令行工具使用

你可以通過運行以下命令來使用 similarity_ranker.py:

python3 -m similarity_ranker \
  --prompt "你的查詢句子" \
  --txt-folder "包含 txt 文件的文件夾" \
  --embeddings-folder "包含嵌入向量文件的文件夾" \
  --output-json "輸出 JSON 文件名(可選)"

作為模塊導入使用

首先,導入 similarity_ranker

from similarity_ranker import query_embeddings, save_ranking_to_json

然後,使用 query_embeddings 函數獲取查詢句子的相似度排名:

prompt = "你的查詢句子"
embeddings_folder = "包含嵌入向量文件的文件夾"
ranking = query_embeddings(prompt, embeddings_folder)

接著,使用 save_ranking_to_json 函數將排名結果保存為 JSON 文件:

txt_folder = "包含 txt 文件的文件夾"
output_file = "輸出 JSON 文件名"
save_ranking_to_json(prompt, ranking, txt_folder, output_file)

範例

假設你有以下文件結構:

data/
  txt/
    file1.txt
    file2.txt
    ...
  embeddings/
    file1.pt
    file2.pt
    ...

你可以通過運行以下命令找到與查詢句子最相似的嵌入向量:

python3 -m similarity_ranker \
  --prompt "你的查詢句子" \
  --txt-folder "data/txt" \
  --embeddings-folder "data/embeddings" \
  --output-json "data/top_similarity.json"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

similarity-ranker-1.0.3.tar.gz (3.2 kB view hashes)

Uploaded Source

Built Distribution

similarity_ranker-1.0.3-py3-none-any.whl (3.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page