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

就有公司域名怎么建设网站东台网站建设服务商

就有公司域名怎么建设网站,东台网站建设服务商,旺道seo怎么优化网站,wordpress文章插件知识库读取Word内容时#xff0c;由于embedding切片操作#xff0c;可能会出现表格被分割成多个切片的情况。这种切片方式可能导致“列名栏”和“内容栏”之间的Y轴关系链断裂#xff0c;从而无法准确地确定每一列的数据对应关系#xff0c;从而使得无法准确知道每一列的数…知识库读取Word内容时由于embedding切片操作可能会出现表格被分割成多个切片的情况。这种切片方式可能导致“列名栏”和“内容栏”之间的Y轴关系链断裂从而无法准确地确定每一列的数据对应关系从而使得无法准确知道每一列的数据汇总。 用下面表格为例子 级数 T1 T2 T3 T4 T5 T6 T7 子等 T1.1-1.2 T2.1-2.2 T3.1-3.3 T4.1-4.3 T5.1-5.2 T6.1-6.2 T7 专业名称 实习 工程师 助理 工程师 工程师 高级 工程师 资深 工程师 专家级 工程师 首席 工程师 学历 本科及以上 本科及以上 本科及以上 本科及以上 本科及以上 硕士及以上 硕士及以上 工作经验 1年以内兼职 1-3年 3-5年 5-8年 8-10年 10-15年 15年以上 级数 T1 T2 T3 T4 T5 T6 T7 子等 T1.1-1.2 T2.1-2.2 T3.1-3.3 T4.1-4.3 T5.1-5.2 T6.1-T6.2 T7 专业名称 实习 工程师 助理 工程师 工程师 高级 工程师 资深 工程师 专家级 工程师 首席 工程师 分值 60-64分 65-69分 70-79分 80-89分 90-94分 95-97分 98-100分 直接演示一下本文代码运行的对比结果分别展示“无优化”和“有优化”的问答结果标绿框的是回答错误的 本文帮助提高文本处理和向量化的效率以下是对每个步骤的详细说明详见md_embedding.py源码 分离文字和表格将原始Word文档中的文字内容和表格分开保存。将文字内容保存为纯文本的Markdown文件而将表格单独保存为多个只包含Markdown表格的Markdown文件。例如一个Word文档包含2个表格即生成1个纯文字Markdown文件2个纯表格的Markdown文件。切片并向量化处理对于多个Markdown文件按照固定的大小切片确保切片大小是大于Markdown表格的体积以确保包含完整的表格。然后对这些切片进行向量化处理。 这种方法的优点是能够有效地分离文字和表格并通过切片和向量化处理提高处理效率。通过将表格转化为向量表示可以更方便地进行后续的计算和分析。同时由于切片时保证了表格的完整性可以避免表格被切断导致信息丢失的问题。 有优化的embedding的源码 md_embedding.py 如下 import os from langchain.embeddings import OpenAIEmbeddings from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.vectorstores import Chroma from langchain.document_loaders import TextLoader from langchain.text_splitter import CharacterTextSplitter from langchain.document_loaders import DirectoryLoader from langchain.document_loaders import UnstructuredFileLoader from langchain.document_loaders import UnstructuredWordDocumentLoaderfrom docx import Documentdef convert_word_tables_to_markdown(file_path, output_folder):def convert_table_to_markdown(table):markdown for row in table.rows:cells [cell.text.replace(\n, ).replace(|, #124;) for cell in row.cells]markdown |.join(cells) |\nreturn markdowndoc Document(file_path)# 创建输出文件夹如果不存在os.makedirs(output_folder, exist_okTrue)# 将每个表格转换为Markdown并保存为单独的TXT文件for i, table in enumerate(doc.tables):markdown convert_table_to_markdown(table)filename_without_extos.path.splitext(os.path.basename(file_path))[0]# 将Markdown表格写入TXT文件output_file_path os.path.join(output_folder, filename_without_extf_output_{i1}.md)with open(output_file_path, w, encodingutf-8) as file:file.write(markdown)return output_folderdef remove_tables_save_as_md(file_path, output_file_path):doc Document(file_path)# 移除所有表格for table in doc.tables:table._element.getparent().remove(table._element)# 获取剩余内容的纯文本并构建Markdown格式字符串content [p.text.strip() for p in doc.paragraphs if p.text.strip()]markdown_content \n\n.join(content)# 保存为MD文件with open(output_file_path, w, encodingutf-8) as file:file.write(markdown_content)return output_file_pathabs_docx_pathD:\CloudDisk\OpenAI\博客的源码\Docx表格优化\带表格DOCX.docx embedding_folder_pathos.path.dirname(abs_docx_path)\\md_txt os.makedirs(embedding_folder_path,exist_okTrue)convert_word_tables_to_markdown(abs_docx_path,embedding_folder_path) remove_tables_save_as_md(abs_docx_path,embedding_folder_path\\os.path.basename(abs_docx_path).md)# 1 定义embedding embeddings OpenAIEmbeddings(openai_api_keyaaaaaaaaaaaaaaaaaa,openai_api_basebbbbbbbbbbbbbbbbbbbbbbbbbb,openai_api_typeazure,modeltext-embedding-ada-002,deploymentlk-text-embedding-ada-002,chunk_size1)# 2 定义文件 loader DirectoryLoader(embedding_folder_path, glob**/*.md) pages loader.load_and_split()# 按固定尺寸切分段落 text_splitter_RCTS RecursiveCharacterTextSplitter(chunk_size 500,chunk_overlap 100 )split_docs_RCTS text_splitter_RCTS.split_documents(pages) for item in split_docs_RCTS:print(item)print()#写入向量数据库 print(f写入RCTS向量数据库) vectordb Chroma.from_documents(split_docs_RCTS, embeddingembeddings, persist_directory./MD_RCTS/) vectordb.persist()无优化的embedding的源码docx_embedding.py 如下 import os from langchain.embeddings import OpenAIEmbeddings from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.vectorstores import Chroma from langchain.document_loaders import UnstructuredWordDocumentLoader# 1 定义embedding embeddings OpenAIEmbeddings(openai_api_keyaaaaaaaaaa,openai_api_basebbbbbbbbbbb,openai_api_typeazure,modeltext-embedding-ada-002,deploymentlk-text-embedding-ada-002,chunk_size1)docx_file_pathD:\CloudDisk\OpenAI\博客的源码\Docx表格优化\带表格DOCX.docx# 2 定义文件 loader UnstructuredWordDocumentLoader(docx_file_path) pages loader.load_and_split()# 按固定尺寸切分段落 text_splitter_RCTS RecursiveCharacterTextSplitter(chunk_size 500,chunk_overlap 100 )split_docs_RCTS text_splitter_RCTS.split_documents(pages) for item in split_docs_RCTS:print(item)print()#写入向量数据库 print(f写入RCTS向量数据库) vectordb Chroma.from_documents(split_docs_RCTS, embeddingembeddings, persist_directory./Word_RCTS/) vectordb.persist() 问答测试 chat_qa.py import time from langchain.embeddings.openai import OpenAIEmbeddings from langchain.vectorstores import Chroma from langchain.chains import RetrievalQA from langchain.chat_models import AzureChatOpenAIdef getQuestionList():question_list[级数T6,专业名称是?,要求硕士学历有哪些级数?,分值大于等于70是哪些级数?,可以兼职的是什么级数?,需要工作经验满5年以上是哪些专业?,首席工程师要求什么学历工作经验多少年,自上而下的原则是指?,现场答辩是指?,级数T3,专业名称是?,级数T4,专业名称是?,]return question_listembeddings OpenAIEmbeddings(openai_api_keyaaaaaaaaaaaaaaaaa,openai_api_basebbbbbbbbbbbbbbbbbbbbbbb,openai_api_typeazure,modeltext-embedding-ada-002,deploymentlk-text-embedding-ada-002,chunk_size1)openAiLLm AzureChatOpenAI(openai_api_keyaaaaaaaaaaaaaaaaaaaaaaaaaaaa, #注意这里不同 API_BASE 使用不同 APK_KEYopenai_api_basebbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb,openai_api_version2023-03-15-preview,deployment_namelk-gpt-35-turbo-16k,temperature0.9,model_namegpt-35-turbo-16k,max_tokens300)print(------r---r---r----)word_RTCS Chroma(persist_directory./Word_RCTS/, embedding_functionembeddings) word_qa RetrievalQA.from_chain_type(llmopenAiLLm,chain_typestuff,retrieverword_RTCS.as_retriever(),return_source_documents False) md_RTCS Chroma(persist_directory./MD_RCTS/, embedding_functionembeddings) md_qa RetrievalQA.from_chain_type(llmopenAiLLm,chain_typestuff,retrievermd_RTCS.as_retriever(),return_source_documents False)#print(qa_RTCS)#查看自定义Prompt的结构体内容 for i in range(0,len(getQuestionList())):question_textgetQuestionList()[i]# 进行问答wordchat word_qa({query: question_text}) wordquery str(wordchat[query])wordresult str(wordchat[result])print(问题: ,wordquery)print(无优化-结果:,wordresult)time.sleep(1)#每次提问间隔1scsvchat md_qa({query: question_text}) csvquery str(csvchat[query])csvresult str(csvchat[result])#print(MD问题: ,csvquery)print(有优化-结果:,csvresult)print(----------------------------------------)time.sleep(1)#每次提问间隔1s
http://www.pierceye.com/news/566577/

相关文章:

  • 北京设计公司网站互联网行业都有哪些工作岗位呢
  • lnmp wordpress建设多网站个人网站设计毕业设计论文
  • 如何申请建设网站网站运营与管理的心得体会
  • WordPress如何建小语种网站网站用橙色
  • 北京专业网站优化c2c平台名称
  • 网站建设成本多少四平网站建设公司
  • 专做婚宴用酒是网站玄武模板网站制作报价
  • 建设大型网站设计公司微信公众号菜单跳转网页怎么制作
  • 昆明建设网站网页游戏4399
  • 韶关网站开发搜索引擎调价工具哪个好
  • 镇江做网站的公司上海排名前十的装修公司
  • 如何优化网站关键字网站登录 退出怎么做
  • 网站留言板怎么做湖北网站建设企业
  • 网站建设 教案装饰工程公司经营范围包括哪些?
  • 如何制作动漫网站模板下载地址wamp安装wordpress
  • 做一张简单的app网站多钱.net网站开发后编译
  • 网站上的菠菜游戏哪里可以做做移动网站优化软件
  • 延吉最好的网站建设公司单位建设网站需要的材料
  • 做可视化的网站宿迁 网站制作
  • 深圳如何搭建制作网站济南网站排名推广
  • 六感程序网站建设网站建设材料
  • 大气个人网站源码一般做门户网站多少钱
  • 东营网站推广排名榆林市工程造价信息网
  • 电影网站排名怎么做制作网站的步骤和方法
  • 请大学生做网站广东恒力建设工程有限公司网站
  • 辽宁建设工程造价管理网站业务外包服务公司
  • 合肥制作网站学校如何建设网站
  • 网站设计机构网站后台管理系统登录
  • 国家单位网站建设要多久网络营销推广公司获客
  • 网站开发 app全网推广代运营