🚀 FRIDA GGUF模型卡片
FRIDA是一個基於T5去噪架構的全量微調通用文本嵌入模型。該模型受去噪架構啟發,基於T5構建。它以FRED - T5模型的編碼器部分為基礎,延續了文本嵌入模型的研究(如ruMTEB、[ru - en - RoSBERTa](https://huggingface.co/ai - forever/ru - en - RoSBERTa))。該模型在俄英雙語數據集上進行了預訓練,並針對目標任務進行了微調,以提升性能。
如需瞭解更多模型細節,請參考我們的技術報告[TODO]。
🚀 快速開始
FRIDA模型可直接使用,並搭配特定前綴。建議使用CLS池化。前綴和池化的選擇取決於具體任務。
✨ 主要特性
- 多任務前綴支持:模型支持多種前綴,可根據不同任務靈活選擇,以優化性能。
- 可微調性:可以使用相關的高質量俄英數據集對模型進行微調,以更好地滿足特定需求。
📦 安裝指南
Ollama
ollama pull evilfreelancer/FRIDA:f16
💻 使用示例
基礎用法
模型可以直接使用前綴進行編碼。以下是使用Transformers和SentenceTransformers庫進行文本編碼的示例。
import json
import requests
import numpy as np
OLLAMA_HOST = "http://localhost:11434"
MODEL_NAME = "evilfreelancer/FRIDA:f16"
def get_embedding(text):
payload = {
"model": MODEL_NAME,
"input": text
}
response = requests.post(
f"{OLLAMA_HOST}/api/embed",
data=json.dumps(payload, ensure_ascii=False),
headers={"Content-Type": "application/x-www-form-urlencoded"}
)
response.raise_for_status()
return np.array(response.json()["embeddings"][0])
def normalize(vectors):
vectors = np.atleast_2d(vectors)
norms = np.linalg.norm(vectors, axis=1, keepdims=True)
norms[norms == 0] = 1.0
return vectors / norms
def cosine_diag_similarity(a, b):
return np.sum(a * b, axis=1)
inputs = [
"paraphrase: В Ярославской области разрешили работу бань, но без посетителей",
"categorize_entailment: Женщину доставили в больницу за ее жизнь сейчас борются врачи.",
"search_query: Сколько программистов нужно, чтобы вкрутить лампочку?",
"paraphrase: Ярославским баням разрешили работать без посетителей",
"categorize_entailment: Женщину спасают врачи.",
"search_document: Чтобы вкрутить лампочку нужно три программиста.",
]
size = int(len(inputs)/2)
embeddings = normalize(np.array([get_embedding(text) for text in inputs]))
sim_scores = cosine_diag_similarity(embeddings[:size], embeddings[size:])
print(sim_scores.tolist())
高級用法
為了更好地滿足您的需求,可以使用相關的高質量俄英數據集對模型進行微調。
前綴選擇規則
我們使用以下基本規則來選擇前綴:
"search_query: "
和 "search_document: "
前綴用於答案或相關段落檢索。
"paraphrase: "
前綴用於對稱釋義相關任務(如STS、釋義挖掘、去重)。
"categorize: "
前綴用於文檔標題和正文的非對稱匹配(如新聞、科學論文、社交媒體帖子)。
"categorize_sentiment: "
前綴用於依賴情感特徵的任務(如仇恨、毒性、情感分析)。
"categorize_topic: "
前綴用於需要按主題對文本進行分組的任務。
"categorize_entailment: "
前綴用於文本蘊含任務(NLI)。
🔧 技術細節
FRIDA模型基於T5去噪架構,以FRED - T5模型的編碼器部分為基礎。它在俄英雙語數據集上進行了預訓練,並針對目標任務進行了微調。
📄 許可證
本模型採用MIT許可證。
👥 作者
📚 引用
@misc{TODO
}
⚠️ 侷限性
該模型主要設計用於處理俄語文本,英語處理質量未知。最大輸入文本長度限制為512個標記。
屬性 |
詳情 |
模型類型 |
基於T5去噪架構的全量微調通用文本嵌入模型 |
訓練數據 |
俄英雙語數據集 |
⚠️ 重要提示
模型主要設計用於處理俄語文本,英語處理質量未知。最大輸入文本長度限制為512個標記。
💡 使用建議
為了更好地滿足您的需求,可以使用相關的高質量俄英數據集對模型進行微調。同時,根據不同任務選擇合適的前綴和池化方法。