96SEO 2026-02-20 08:58 8
知识相关度阈值score_threshold内容条数k是否启用上下文关联chunk_conent上下文最大长度chunk_size

其主要作用是在所在文档中扩展与当前query相似度较高的知识库的内容作为相关信息与query按照prompt规则组合后作为输入获得模型的回答。
similarity_search_with_score(self,
self.embedding_function(query)docs
self.similarity_search_with_score_by_vector(embedding,
ls[i]:ls1.append(ls[i])else:lists.append(ls1)ls1
similarity_search_with_score_by_vector(self,
self._normalize_L2:faiss.normalize_L2(vector)#
k)这步获取与query有top-k相似度的知识库scores,
len(self.index_to_docstore_id)rearrange_id_list
doc.metadata[context_expand]):#
int(scores[0][j])docs.append(doc)continue#
其实存的都是indexid_set.add(i)docs_len
一个知识库是分句后得到的一句话i是当前知识库在总知识库中的位置store_len是总知识库大小#
doc.metadata[context_expand_method]
doc.metadata[context_expand_method]
len(self.index_to_docstore_id):_id0
self.index_to_docstore_id[l]doc0
如果当前字数大于250或者是知识库跨了文件扩充上下文过程终止#
这一句有些问题有一端跨文件就终止应该是两端同时跨才终止才对if
\doc.metadata[source]:break_flag
len(doc0.page_content)id_set.add(l)rearrange_id_list
返回二级列表第一级是连续的index列表第二级是具体indexid_lists
copy.deepcopy(self.docstore.search(_id))else:_id0
self.index_to_docstore_id[id]doc0
self.docstore.search(_id0)doc.page_content
因为可能会将多个连续的id合并因此需要将同一seq内所有位于top-k的知识库的分数取最小值作为seq对应的分数doc_score
indices[0]]])doc.metadata[score]
int(doc_score)docs.append(doc)#
注意这里docs没有按相似度排序可以自行加个sortreturn
get_knowledge_based_answer(self,
STREAMING):related_docs_with_score
vector_store.similarity_search_with_score(query,
generate_prompt(related_docs_with_score,
queryanswer_result_stream_result
prompt_template.replace({question},
其实就是要存多少历史记录如果为0的话就是在执行当前对话时不考虑历史问答
模型内部调用时使用以chatglm为例chatglm_llm.py
Optional[CallbackManagerForChainRun]
inputs[self.history_key]streaming
inputs[self.streaming_key]prompt
inputs[self.prompt_key]print(f__call:{prompt})#
transformers.StoppingCriteriaList()#
torch.FloatTensor同步到AnswerResultlistenerQueue
AnswerResultQueueSentinelTokenListenerQueue()stopping_criteria_list.append(listenerQueue)if
enumerate(self.checkPoint.model.stream_chat(self.checkPoint.tokenizer,prompt,#
为0时history返回[]historyhistory[-self.history_len:-1]
[],max_lengthself.max_token,temperatureself.temperature,top_pself.top_p,top_kself.top_k,stopping_criteriastopping_criteria_list)):向量匹配
虽然放在了模型配置那一页但实际上还是用来控制上下文关联里面的内容条数k的不知道为什么写了两遍。
。
。
score_threshold和k设太小会找不到问题对应的原文件太大找到一堆不相关的chunk_size设太小不能在原文件里找到问题对应的原文太大无法有效归纳出答案temperature和top_p默认值下生成的答案基本固定但也很死板过大的temperature导致回答的事实不稳定过大的top_p导致回答的语言风格不稳定调整top_k没发现结果有什么变化
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback