|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181 |
- import requests
- import json
- import re
-
-
- def CallResult(prompt):
- headers = {
- 'Content-Type': 'application/json',
- 'Cookie': 'MODEL_USER_AUTH=4879b93405ebb89cad144590f0a4873f#3',
- }
- data = json.dumps({
- 'reqSource': "private",
- 'reqParams': {
- 'busCode': "fpExtract",
- 'degree': "low",
- 'fpRequire': prompt,
- },
- })
- # print("ChatGLM prompt:",prompt)
- # 调用api
- response = requests.post("http://81.70.174.229:9000/api/serveChannel",headers=headers,data=data)
- if response.status_code != 200:
- return "查询结果错误"
- resp = response.json()
- return resp['data']
-
-
- # 调用glm
- def CallResultNew(prompt):
- headers = {
- 'Content-Type': 'application/json',
- 'Cookie': 'MODEL_USER_AUTH=92962ed4181f5221b20faaad1c42b3b8#3',
- }
- # 调用api
- if prompt != "":
- url = f'http://81.70.174.229:8090/smarty/fpNameExtract?fpRequire={prompt}&modelType=llm'
- response = requests.get(url, headers=headers)
- if response.status_code != 200:
- return "查询结果错误"
- resp = response.json()
- return resp['data']
-
-
- def CallContentResult(prompt):
- content = ""
- seqs = re.split("。", prompt)
- for seq_ele in seqs:
- if seq_ele != '':
- headers = {
- 'Content-Type': 'application/json',
- 'Cookie': 'MODEL_USER_AUTH=4879b93405ebb89cad144590f0a4873f#3',
- }
- data = json.dumps({
- 'reqSource': "private",
- 'reqParams': {
- 'busCode': "fpExtract",
- 'degree': "low",
- 'fpRequire': seq_ele.replace("\n", "").replace(" ", ""),
- },
- })
- # 调用api
- response = requests.post("http://81.70.174.229:9000/api/serveChannel", headers=headers, data=data)
- if response.status_code != 200:
- return "查询结果错误"
- resp = response.json()
- glm_data =resp['data']
- print(f'glm_data = {glm_data}')
- act_list_str = ",".join(glm_data["actList"])
- obj_list_str = ",".join(glm_data["objList"])
- content = content + act_list_str + "|" + obj_list_str + " -> "
-
- print(content)
- return content
-
-
- def CallContentResultNew(prompt):
- content = ""
- seqs = re.split("。", prompt)
- for seq_ele in seqs:
- if seq_ele != '':
- headers = {
- 'Content-Type': 'application/json',
- 'Cookie': 'MODEL_USER_AUTH=92962ed4181f5221b20faaad1c42b3b8#3',
- }
- url = f'http://81.70.174.229:8090/smarty/fpNameExtract?fpRequire={prompt}&modelType=llm'
- response = requests.post(url, headers=headers)
- if response.status_code != 200:
- return "查询结果错误"
- resp = response.json()
- glm_datas = resp['data']
- for glm_data in glm_datas:
- name = glm_data["name"]
- content += name
- content = content.replace("<br/>", ",")
- return content
-
-
- def AutoDLResult(prompt):
- # prompt = prompt.replace("\n", " ")
- # print(f"prompt: {prompt}")
- # url = f"http://10.100.148.24:8000"
- # payload = json.dumps({
- # # 'top_p': 0.8,
- # # 'temperature': 0.1,
- # 'prompt': prompt,
- # })
- # headers = {
- # 'Content-Type': 'application/json',
- # 'Accept': 'application/json'
- # }
- # response = requests.request("POST", url, headers=headers, data=payload)
- # desc = response.json().get("response")
- # print(f"desc : {desc}")
- # pattern = r"\d+\.?\d*"
- # nums = re.findall(pattern, desc)
- # if len(nums) > 0:
- # print("提取到的数字:", nums[0])
- # n = float(nums[0])
- # if n is None:
- # return 0, ""
- # return n, filter_emoji(desc)
- return 0, ""
-
-
- def AutoDLResultNoNum(prompt):
- # prompt = prompt.replace("\n", " ")
- # print(f"prompt: {prompt}")
- # url = f"http://10.100.148.24:8000"
- # payload = json.dumps({
- # # 'top_p': 0.8,
- # # 'temperature': 0.1,
- # 'prompt': prompt,
- # })
- # headers = {
- # 'Content-Type': 'application/json',
- # 'Accept': 'application/json'
- # }
- # response = requests.request("POST", url, headers=headers, data=payload)
- # desc = response.json().get("response")
- # print(f"desc : {desc}")
- # return desc
- return ""
-
-
- def qwenResult(sentence1, sentence2):
- url = f"http://127.0.0.1:5010/api/v1/compare"
- payload = json.dumps({
- 'sentence1': sentence1,
- 'sentence2': sentence2,
- })
- headers = {
- 'Content-Type': 'application/json',
- 'Accept': 'application/json'
- }
- response = requests.request("POST", url, headers=headers, data=payload)
- desc = response.json().get("data")
- print(f"desc : {desc}")
- return desc
-
-
-
- # 去除文本中的特殊表情
- def filter_emoji(desstr, restr=''):
- # 过滤表情
- try:
- co = re.compile(u'[\U00010000-\U0010ffff]')
- except re.error:
- co = re.compile(u'[\uD800-\uDBFF][\uDC00-\uDFFF]')
- return co.sub(restr, desstr)
-
-
- if __name__ == '__main__':
- # text = "这是一个带有表情符号😊的字符"
- # text = filter_emoji(text)
- # content_x = '''会议管理,支持相关人员建立评审会议,评审会议和项目关联,并支持后续的专家抽取、结果确认等。会议建立完成后,相关人员可选择专家抽取模式,手动抽取是从专家库中手动筛选及选取专家参加评审。会议建立完成后,相关人员可选择专家抽取模式,自动抽取实现专家按标签自动抽取,抽取成功后生成会议通知、会议签到单。'''
- # content_y = '''1、专家库管理概述:实现和省级专家库对接,获取专家信息,并实现用户自行录入专家信息。同时要实现专家自定义抽取、抽取规则模板设置、在线短信与智能语音通知,专家赴会反馈等功能,继而实现专家线上管理。同时需要建立信创专家和信息化专家两个大类别,两个类别可重合。2、专家库基础信息:(1)统一的专家基础信息:构建统一的专家信息,同时与现有专家库进行数据同步,实现信息化项目专家信息的统一共享。支持多维度的专家查询通道。(2)标签管理:实现专家标签管理,为不同的专家贴上擅长领域标签,让专家擅长领域更加直观,让单位建设信息化项目有一个对应标签的专家支撑,为项目单位信息化项目保驾护航,减少单位信息化项目建设的风险。(3)专家卡片:专家卡片涵盖专家基本信息、专业标签信息以及参与信息化项目履职情况,形成一个动态的专家档案信息。(4)自定义设计:专家登录系统后可自行修改完善自身专家信息。信息需数管中心审核后方可生效。3、专家抽取管理:实现已有专家中,可根据不同类型筛选,并随机抽取对应专家,系统通过对接短信平台和智能语音平台来自动发送评审会议通知,专家实施反馈。(1)需在抽取管理中预设抽取规则模板:模板一:1000万预算以下项目,抽取5名评审专家,先抽取1名信创专家,待信创专家确认参会后再抽取4名信息化专家。模板二:1000万预算(含)以上项目抽取7名评审专家,先抽取1名信创专家,待信创专家确认参会后再抽取6名信息化专家。支持多轮抽取,已确保专家随机抽取的有效性。(2)专家评审通知规则:抽中的专家立即通过智能语音电话进行通知,专家选择参会后以短信形式再次发送项目评审会的时间、地址、项目名称信息给参会专家。如抽中专家接了电话未反馈是否参会或拒绝参会,系统自动进行下一轮抽取。如抽中的专家未接电话,10分钟后再拨打一次,如还未接,判断为不参会,系统自动进行下一轮抽取。直至抽满足够人数为止。(3)抽取规避原则:1)信创专家会和信息化专家有重叠,在信创专家中抽中的专家在后续信息化专家抽取中要规避。2)如有专家是在此申报单位中任职的,系统要自动规避抽取。(4)评审会信息修改与取消:需要实现评审会评审时间或地点修改,可以语音电话通知和短信通知相应专家的功能。需要实现评审会取消与通知,可以语音电话通知和短信通知相应专家的功能。(5)自动抽取失败处理:如专家自动抽取中发生反馈参会专家数量少于所需专家数量时,需要提实现手动指定专家参会的功能。(6)专家请假:提供专家评审会请假功能,已抽中并参加评审会的专家,如后续需要请假,可由两种方式进行申请:(1)专家电话联系评审会邀请人进行请假,评审会邀请人在系统中录入并确认该专家请假,邀请人可再次发起专家抽取进行补充专家。(2)专家登录系统进行申请请假,请假申请后系统自动再抽取一轮专家进行补充,并将变更信息通知评审会邀请人。4、专家履职: 可在系统中,查看专家参与评审的所有项目记录信息,并履行相关的项目审查工作。'''
- # str_con = AutoDLResultNoNum(f"告诉我下面两段话的重复率百分比是多少: \n第一段话是:'{content_x}', \n ----------------- \n 第二段话是:'{content_y}'")
- # print(str_con)
- # qwenResult("你好啊", "你真好")
- string = "相似度等级:高 原因:这两段话都涉及到信息"
- print(string[6:7])
|