codefuse-ai / ModelCache

A LLM semantic caching system aiming to enhance user experience by reducing response time via cached query-result pairs.
Other
892 stars 44 forks source link

请问一下scope中的model字段是做什么用的? #48

Closed cgq0816 closed 2 weeks ago

cgq0816 commented 1 month ago

image

做了一下实验, cache启动命令:python flask4modelcache_demo.py

1、写入cache type = 'insert' scope = {"model": "sum-1008"} 问题:测试123 答案:"{"answerResultType": "资讯向量搜索", "answerContent": "搜索完成", "flag": "789456"}" 2、读cache type = 'query' scope = {"model": "llm"} 问题:测试123

3、结果 model为llm会查出sum-1008的数据 {'errorCode': 0, 'errorDesc': '', 'cacheHit': True, 'delta_time': '0.01s', 'hit_query': 'user###测试123', 'answer': '{"answerResultType": "资讯向量搜索", "answerContent": "搜索完成", "flag": "789456"}'}

我理解scope中的model是不同模型的存储结果,A模型不能查出B模型的结果,但是现在A模型能查出B模型的结果,请问这个是否正常呢,如果不正常,我该如何使用modelcache呢?

peng3307165 commented 1 month ago

flask4modelcache_demo.py 出发点是为了使用户能快速测试ModelCache的效果,使用的是嵌入式数据库sqlite和faiss, 这两个数据库不太适合线上应用,同时由于时间问题,我们没有在demo中实现Model数据隔离。

如果你希望使用scope中的model字段进行数据隔离,可以参考readme中的“正常服务启动”来配置并启动服务(flask4modelcache.py),详见:https://github.com/codefuse-ai/ModelCache/blob/main/README_CN.md image

如果你觉得在嵌入式数据库(faiss和sqlite)中数据隔离是必要的,欢迎加入我们的项目,帮助我们实现相应的能力。

最后,感谢你对ModelCache项目的关注!