浏览代码

Fix Voyage re-rank model. Limit file name length. (#4171)

### What problem does this PR solve?

#4152 
#4154

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
tags/v0.15.1
Kevin Hu 10 个月前
父节点
当前提交
cb45431412
没有帐户链接到提交者的电子邮件
共有 2 个文件被更改,包括 5 次插入1 次删除
  1. 2
    0
      api/db/services/file_service.py
  2. 3
    1
      rag/llm/rerank_model.py

+ 2
- 0
api/db/services/file_service.py 查看文件

@@ -345,6 +345,8 @@ class FileService(CommonService):
MAX_FILE_NUM_PER_USER = int(os.environ.get('MAX_FILE_NUM_PER_USER', 0))
if MAX_FILE_NUM_PER_USER > 0 and DocumentService.get_doc_count(kb.tenant_id) >= MAX_FILE_NUM_PER_USER:
raise RuntimeError("Exceed the maximum file number of a free user!")
if len(file.filename) >= 128:
raise RuntimeError("Exceed the maximum length of file name!")

filename = duplicate_name(
DocumentService.query,

+ 3
- 1
rag/llm/rerank_model.py 查看文件

@@ -422,10 +422,12 @@ class VoyageRerank(Base):
self.model_name = model_name

def similarity(self, query: str, texts: list):
rank = np.zeros(len(texts), dtype=float)
if not texts:
return rank, 0
res = self.client.rerank(
query=query, documents=texts, model=self.model_name, top_k=len(texts)
)
rank = np.zeros(len(texts), dtype=float)
for r in res.results:
rank[r.index] = r.relevance_score
return rank, res.total_tokens

正在加载...
取消
保存