huansuan0105.py 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from template import expression
  2. from config import simplemodel
  3. def callzaihuansuan0105_1(bianma, label, A,B,C, aiclient, qwclient, sfclient):##C->tz
  4. completion = aiclient.chat.completions.create(
  5. model="glm-4.5-air",
  6. messages=[
  7. {"role": "system", "content": "You are a helpful assistant."},
  8. {"role": "user", "content": " 背景知识:厚度可以用单位米(m)来衡量,可以用单位厘米(cm)来衡量,可以用单位毫米(mm)来衡量;如果没有明确单位,默认指毫米"},
  9. {"role": "user", "content": "问题描述: 计量单位可以用名称或者符号表示,常用的符号包括表示米的符号m,表示千米的符号km,表示吨的符号t,表示千克的符号kg,表示平方米的符号m2,表示立方米的符号m3。给定一段工作内容描述,内容为" + C + ",给定其工作量计量单位,内容为" + A + ",记作A,再给定一个工序描述, 内容为" + label + ",它属于前述工作内容的一部分。它的计量单位为" + B + ",记作B。若A表示面积,B表示体积,且工序涉及垫层,则可以从工作内容中识别出垫层的厚度(米),作为换算系数coefficient,最终返回A=coefficient*B。例如,工作内容涉及垫层的厚度是0.1米,则返回A=0.1*B。工作内容涉及垫层的厚度为200mm,则换算为0.2米,返回A=0.2*B。若不符合上述情况,则返回A<>B。例如,A表示长度,B表示面积,则返回A<>B。再例如,A表示重量,B表示体积,则返回A<>B"},
  10. ],
  11. extra_body={"thinking": {"type": "disabled"}},
  12. )
  13. json_string = completion.choices[0].message.content
  14. print(json_string)
  15. completion = sfclient.chat.completions.create(
  16. model=simplemodel(),
  17. messages=expression(json_string),
  18. extra_body={"thinking": {"type": "disabled"}},
  19. )
  20. json_string = completion.choices[0].message.content
  21. print(json_string)
  22. return json_string
  23. def callzaihuansuan0105_2(bianma, label, A,B,C, aiclient, qwclient, sfclient):##C->tz
  24. completion = aiclient.chat.completions.create(
  25. model="glm-4.5-air",
  26. messages=[
  27. {"role": "system", "content": "You are a helpful assistant."},
  28. {"role": "user", "content": " 背景知识:长度可以用单位米(m)来衡量,可以用单位厘米(cm)来衡量,可以用单位毫米(mm)来衡量;如果没有明确单位,默认指毫米"},
  29. {"role": "user", "content": "问题描述: 计量单位可以用名称或者符号表示,常用的符号包括表示米的符号m,表示千米的符号km,表示吨的符号t,表示千克的符号kg,表示平方米的符号m2,表示立方米的符号m3,也有比较宽泛的数量单位,例如套。给定一段工作内容描述,内容为" + C + ",给定其工作量计量单位,内容为" + A + ",记作A,再给定一个工序描述, 内容为" + label + ",它属于前述工作内容的一部分。它的计量单位为" + B + ",记作B。若A表示套,B表示面积,且工序涉及盖板,则可以从工作内容中识别出盖板的尺寸,计算他的面积(不考虑厚度),作为换算系数coefficient,最终返回A=coefficient*B。例如,工作内容涉及盖板是长方形,面积1平方米,B是1平方米,则返回A=1*B。如果B是10平方米(m2),则返回A=0.1*B。若不符合上述情况,则返回A<>B。例如,A表示长度,B表示面积,则返回A<>B。再例如,A表示重量,B表示体积,则返回A<>B"},
  30. ],
  31. extra_body={"thinking": {"type": "disabled"}},
  32. )
  33. json_string = completion.choices[0].message.content
  34. print(json_string)
  35. completion = sfclient.chat.completions.create(
  36. model=simplemodel(),
  37. messages=expression(json_string),
  38. extra_body={"thinking": {"type": "disabled"}},
  39. )
  40. json_string = completion.choices[0].message.content
  41. print(json_string)
  42. return json_string