当前位置: 首页 > news >正文

资源企业网站排名优化价格php和python做网站

资源企业网站排名优化价格,php和python做网站,泰安网站建设哪家强,扁平化企业网站课件链接#xff1a;https://cloud.189.cn/t/VNvmyimY7Vna#xff08;访问码#xff1a;e4cb#xff09;天翼云盘是中国电信推出的云存储服务#xff0c;为用户提供跨平台的文件存储、备份、同步及分享服务#xff0c;是国内领先的免费网盘#xff0c;安全、可靠、稳定、…课件链接https://cloud.189.cn/t/VNvmyimY7Vna访问码e4cb天翼云盘是中国电信推出的云存储服务为用户提供跨平台的文件存储、备份、同步及分享服务是国内领先的免费网盘安全、可靠、稳定、快速。天翼云盘为用户守护数据资产。https://cloud.189.cn/t/VNvmyimY7Vna%EF%BC%88%E8%AE%BF%E9%97%AE%E7%A0%81%EF%BC%9Ae4cb%EF%BC%89 原始数据来源于本课程的课件 RAG.pdf 文件需要Python解析pdf文件主要使用智谱清言的 embedding-3 将文本转向量化存储到 ChromaDB向量数据库中将向量查询的结果投喂给DeepSeek的deepseek-chat模型由它根据向量查询结果来回答用户提问。 .env文件 OPENAI_API_KEYsk-a6******9d OPENAI_BASE_URLhttps://api.deepseek.com/v1 OPENAI_MODELdeepseek-chat ZHIPU_BASE_URLhttps://open.bigmodel.cn/api/paas/v4/ ZHIPU_API_KEY4923c4dae*******lTGEx7 EMBEDDING_MODELembedding-3 启动向量数据库 chroma run --host 127.0.0.1 --port 5333 --path db_data 初始化 from openai import OpenAI from dotenv import load_dotenv import os import chromadb from chromadb.config import Settingsload_dotenv()# 将 api_key 传入到 openAI 当中 client OpenAI() ai_model os.getenv(OPENAI_MODEL) embed_model os.getenv(EMBEDDING_MODEL)from pdfminer.high_level import extract_pages from pdfminer.layout import LTTextContainerdef get_completion(prompt, modelai_model):封装 openai 接口messages [{role: user, content: prompt}]response client.chat.completions.create(modelmodel,messagesmessages,temperature0,)return response.choices[0].message.contentdef build_prompt(prompt_template, **kwargs):将 Prompt 模板赋值prompt prompt_templatefor k, v in kwargs.items():if isinstance(v, str):val velif isinstance(v, list) and all(isinstance(elem, str) for elem in v):val \n.join(v)else:val str(v)prompt prompt.replace(f__{k.upper()}__, val)return prompt 提示词 prompt_template 你是一个问答机器人。 你的任务是根据下述给定的已知信息回答用户问题。 确保你的回复完全依据下述已知信息。不要编造答案。 如果下述已知信息不足以回答用户的问题请直接回复我无法回答您的问题。 已知信息: __INFO__ 用户问 __QUERY__ 请用中文回答用户问题。解析pdf文件 def extract_text_from_pdf(filename, page_numbersNone, min_line_length1):从 PDF 文件中按指定页码提取文字paragraphs []ids []id_counter 0buffer full_text # 提取全部文本for i, page_layout in enumerate(extract_pages(filename)):# 如果指定了页码范围跳过范围外的页if page_numbers is not None and i not in page_numbers:continuefor element in page_layout:if isinstance(element, LTTextContainer):full_text element.get_text() \n# 按空行分隔将文本重新组织成段落lines full_text.split(\n)for text in lines:if len(text) min_line_length:buffer ( text) if not text.endswith(-) else text.strip(-)elif buffer:paragraphs.append(buffer)ids.append(fid{id_counter})buffer id_counter 1if buffer:paragraphs.append(buffer)ids.append(fid{id_counter})results {documents: paragraphs, ids: ids}return resultsparagraphs extract_text_from_pdf(RAG.pdf, page_numbers[4, 5],min_line_length10) 文本转向量函数 def get_embeddings(texts, modelembed_model):embedClient OpenAI(api_keyos.getenv(ZHIPU_API_KEY),base_urlos.getenv(ZHIPU_BASE_URL))data embedClient.embeddings.create(inputtexts, modelmodel).datareturn [x.embedding for x in data] 向量数据库连接器 class MyVectorDBConnector:def __init__(self, collection_name, embedding_fn):chroma_client chromadb.HttpClient(host127.0.0.1,port5333,)self.embedding_fn embedding_fnself.collection chroma_client.get_or_create_collection(namecollection_name)self.documents []def add_documents(self, contents):self.collection.add(embeddingsself.embedding_fn(contents.get(documents)),documentscontents.get(documents),idscontents.get(ids),)def search(self, query, top_n):results self.collection.query(query_embeddingsself.embedding_fn([query]),n_resultstop_n)return results# 创建一个向量数据库对象 vector_db MyVectorDBConnector(demo, get_embeddings) # 向向量数据库中添加文档 vector_db.add_documents(paragraphs) RAG机器人 class RAG_Bot:def __init__(self, vector_db, llm_api, n_results2):self.vector_db vector_dbself.llm_api llm_apiself.n_results n_resultsdef chat(self, user_query):# 1. 检索search_results self.vector_db.search(user_query, self.n_results)# 2. 构建 Promptprompt build_prompt(prompt_template, infosearch_results[documents][0], queryuser_query)# 3. 调用 LLMresponse self.llm_api(prompt)return response# 创建一个 RAG 机器人 bot RAG_Bot(vector_db,llm_apiget_completion ) 最后提问 # 用户查询 user_query 常用的向量数据库有哪些 response bot.chat(user_query) print(response) 运行效果
http://www.w-s-a.com/news/891275/

相关文章:

  • 网站与微信区别wordpress 站内信
  • 宁夏网站开发设计说明书源码下载脚本之家
  • 邱县做网站百度搜索排名机制
  • 运城个人网站建设智慧团建系统官方网站登录
  • 公司营业执照可以做几个网站一家专门做母婴的网站
  • 网站建设商标属于哪个类别搜狗seo快速排名公司
  • 织梦做商城网站企业网络建站
  • 网站后期维护都有什么wordpress首页加图片
  • 展会网站怎么做网页设计与制作教程版徐洪亮课后答案
  • 石景山网站建设设计公司建设网站怎么建立服务器
  • 本地生活服务平台app网站关键词优化原理
  • 建网站的公司叫什么重庆论坛建站模板
  • 湖北网站制作公司银川网站建设哪家不错
  • 网站后台演示地址服装网站建设公司推荐
  • 湖北钟祥建设局网站旅游哪个网站最好
  • 浙江建设工程信息网站辽宁建设工程信息网场内业绩什么意思
  • 郑州做网站公司 汉狮网络专业图片搜集网站怎么做
  • 网站托管是什么品牌推广营销平台
  • 制作网站的难度贵州省兴义市建设局网站
  • 永春建设局网站室内设计师培训班学费多少
  • 做仿站如何获取网站源码windows2012做网站
  • 网站建设最好的公司东莞外贸网站
  • 普兰店网站建设一般做网站什么价格
  • 网站建设的发展目标甘肃网站设计公司
  • 常州西站建设规划室内装修设计学校哪里好
  • 大连网站制作选择ls15227如何编辑网站
  • 网站发稿平台迪士尼网站是谁做的
  • 常州有哪些好的网站建设案例wordpress 360 插件
  • 模板网站有后台么柳城网站建设
  • 地方门户网站制作一级做c爱片的网站