refine README (#169)

This commit is contained in:
KevinHuSh 2024-03-29 10:48:29 +08:00 committed by GitHub
parent 7bae41c71f
commit 05298d5626
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 19 additions and 3 deletions

View File

@ -47,6 +47,20 @@
## 🤺RagFlow vs. other RAG applications
| Feature | RagFlow | Langchain-Chatchat | Dify.AI | Assistants API | QAnythig | LangChain |
|---------|:---------:|:----------------:|:-----------:|:-----------:|:-----------:|:-----------:|
| **Well-Founded Answer** | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| **Trackable Chunking** | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| **Chunking Method** | Rich Variety | Naive | Naive | Naive | Naive | Naive |
| **Table Structure Recognition** | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| **Structured Data Lookup** | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| **Programming Approach** | API-oriented | API-oriented | API-oriented | API-oriented | API-oriented | Python Code-oriented |
| **RAG Engine** | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :x: |
| **Prompt IDE** | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :x: |
| **Supported LLMs** | Rich Variety | Rich Variety | Rich Variety | OpenAI-only | QwenLLM | Rich Variety |
| **Local Deployment** | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: |
| **Ecosystem Strategy** | Open Source | Open Source | Open Source | Close Source | Open Source | Open Source |
## 🔎 System Architecture
<div align="center" style="margin-top:20px;margin-bottom:20px;">

View File

@ -69,7 +69,8 @@ def set_api_key():
return get_data_error_result(retmsg=msg)
llm = {
"api_key": req["api_key"]
"api_key": req["api_key"],
"api_base": req.get("base_url", "")
}
for n in ["model_type", "llm_name"]:
if n in req:

View File

@ -143,7 +143,7 @@ class CommonService:
@DB.connection_context()
def filter_update(cls, filters, update_data):
with DB.atomic():
cls.model.update(update_data).where(*filters).execute()
return cls.model.update(update_data).where(*filters).execute()
@staticmethod
def cut_list(tar_list, n):

View File

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import json
import math
import re
import logging
import copy
@ -167,4 +168,4 @@ class EsQueryer:
#d = 1e-9
# for k, v in dtwt.items():
# d += v * v
return s / q # math.sqrt(q) / math.sqrt(d)
return s / q / max(1, math.sqrt(math.log10(max(len(qtwt.keys()), len(dtwt.keys())))))# math.sqrt(q) / math.sqrt(d)