如何快速开始使用ViRanker:5分钟安装与基础使用教程 如何快速开始使用ViRanker5分钟安装与基础使用教程【免费下载链接】ViRanker项目地址: https://ai.gitcode.com/hf_mirrors/huangjingwang/ViRankerViRanker是一个专为越南语文本设计的先进重排序模型能够准确评估查询与文档之间的相关性。作为越南语信息检索领域的重要工具ViRanker在MS MMarco越南语数据集上表现出色为用户提供高效、精准的文本相关性评估能力。本教程将引导您在5分钟内完成ViRanker的安装与基础使用让您快速体验这一强大的越南语重排序模型。 ViRanker快速安装指南环境准备与依赖安装开始使用ViRanker之前您需要确保Python环境已就绪。我们推荐使用Python 3.8或更高版本并安装必要的依赖包pip install transformers torch或者使用FlagEmbedding库pip install FlagEmbedding模型下载与配置ViRanker模型文件位于项目根目录包括model.safetensors - 模型权重文件tokenizer.json - 分词器配置文件config.json - 模型配置文件您可以通过以下方式获取完整模型git clone https://gitcode.com/hf_mirrors/huangjingwang/ViRanker 3种快速使用方法方法一使用FlagEmbedding库推荐这是最简单快捷的使用方式from FlagEmbedding import FlagReranker # 初始化ViRanker重排序器 reranker FlagReranker(namdp-ptit/ViRanker, use_fp16True) # 计算单个查询-文档对的相关性分数 score reranker.compute_score( [ai là vị vua cuối cùng của việt nam, vua bảo đại là vị vua cuối cùng của nước ta] ) print(f相关性分数: {score}) # 输出13.71875 # 获取归一化分数0-1范围 normalized_score reranker.compute_score( [ai là vị vua cuối cùng của việt nam, vua bảo đại là vị vua cuối cùng của nước ta], normalizeTrue ) print(f归一化分数: {normalized_score}) # 输出0.999998方法二使用Hugging Face Transformers如果您习惯使用标准的Transformers库import torch from transformers import AutoModelForSequenceClassification, AutoTokenizer # 加载ViRanker模型和分词器 tokenizer AutoTokenizer.from_pretrained(namdp-ptit/ViRanker) model AutoModelForSequenceClassification.from_pretrained(namdp-ptit/ViRanker) model.eval() # 准备查询-文档对 pairs [ [ai là vị vua cuối cùng của việt nam, vua bảo đại là vị vua cuối cùng của nước ta], [ai là vị vua cuối cùng của việt nam, lý nam đế là vị vua đầu tiên của nước ta] ] # 计算相关性分数 with torch.no_grad(): inputs tokenizer(pairs, paddingTrue, truncationTrue, return_tensorspt, max_length512) scores model(**inputs, return_dictTrue).logits.view(-1, ).float() print(f相关性分数: {scores})方法三使用OpenMind框架对于需要NPU加速的场景from openmind import AutoModelForSequenceClassification, AutoTokenizer tokenizer AutoTokenizer.from_pretrained(./ViRanker) model AutoModelForSequenceClassification.from_pretrained(./ViRanker) model.eval() # 推理代码与Transformers类似 实际应用示例越南语问答系统重排序ViRanker在越南语问答系统中特别有用可以帮助您从多个候选答案中找出最相关的一个from FlagEmbedding import FlagReranker reranker FlagReranker(namdp-ptit/ViRanker) # 用户查询 query thủ đô của việt nam là gì # 候选答案列表 candidates [ thủ đô của việt nam là hà nội, thành phố hồ chí minh là thành phố lớn nhất việt nam, việt nam có 63 tỉnh thành, hà nội nằm ở miền bắc việt nam ] # 计算每个候选答案的相关性分数 scores [] for candidate in candidates: score reranker.compute_score([query, candidate], normalizeTrue) scores.append(score) # 找出最佳答案 best_index scores.index(max(scores)) print(f最佳答案: {candidates[best_index]}) print(f相关性分数: {scores[best_index]:.4f})批量处理多个查询ViRanker支持批量处理显著提高处理效率# 批量计算多个查询-文档对 batch_pairs [ [thời tiết hôm nay như thế nào, hôm nay trời nắng đẹp], [cách nấu phở bò, phở bò cần thịt bò, bánh phở và gia vị], [giá vàng hôm nay, vàng là kim loại quý] ] batch_scores reranker.compute_score(batch_pairs, normalizeTrue) for i, score in enumerate(batch_scores): print(f对{i1}: {score:.4f}) ViRanker性能优势根据官方测试数据ViRanker在MS MMarco越南语数据集上表现出色指标ViRanker得分对比其他模型NDCG30.6815领先2.9%MRR30.6641领先2.8%NDCG50.6983竞争力强推理速度2.02 docs/sec平衡性能ViRanker在保持高精度的同时提供了合理的推理速度特别适合越南语信息检索和问答系统。 使用技巧与最佳实践1. 文本预处理建议确保越南语文本正确编码控制文本长度在512个token以内移除无关的特殊字符和HTML标签2. 性能优化技巧启用use_fp16True加速推理轻微精度损失使用批量处理提高吞吐量考虑使用NPU硬件加速如适用3. 分数解释指南原始分数无界实数越高表示越相关归一化分数0-1范围可通过sigmoid函数转换阈值建议通常0.5表示相关0.8表示高度相关️ 高级功能探索自定义微调如果您有特定领域的越南语数据可以参考examples/目录中的示例进行模型微调。训练数据格式为JSONL每行包含查询、正例和负例{query: 越南的首都是哪里, pos: [越南的首都是河内], neg: [胡志明市是越南最大城市]}集成到现有系统ViRanker可以轻松集成到现有的搜索系统或推荐系统中。查看config.json了解模型配置细节或参考examples/inference.py获取完整的推理示例。 总结ViRanker作为专为越南语设计的重排序模型为越南语信息检索提供了强大的工具支持。通过本教程您已经掌握了✅ ViRanker的3种安装和使用方法✅ 实际应用场景和代码示例✅ 性能优化技巧和最佳实践✅ 高级功能探索路径现在就开始使用ViRanker为您的越南语应用添加精准的文本相关性评估能力吧提示更多技术细节和更新请查看项目文档和示例代码。【免费下载链接】ViRanker项目地址: https://ai.gitcode.com/hf_mirrors/huangjingwang/ViRanker创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考