
import os
from openai import OpenAI
from transformers.utils.versions import require_version
import time

require_version("openai>=1.5.0", "To fix: pip install openai>=1.5.0")

def callServer(input):
    port = 8000
    client = OpenAI(
        api_key="0",
        base_url="http://localhost:{}/v1".format(os.environ.get("API_PORT", port)),
    )
    messages = []
    messages.append({"role": "user", "content": input})
    #messages.append({"role": "user", "content": input+"\n请一步步推理，把推理过程放到<think>和</think>之间，并把最终答案放到 \boxed{}。"})
    #result = client.chat.completions.create(messages=messages, model="test",temperature = 0,max_tokens=20000)
    #result = client.chat.completions.create(messages=messages, model="test",temperature = 0)
    result = client.chat.completions.create(messages=messages, model="add2",max_tokens=20000)
    return result.choices[0].message.content
    
def askBatch(dataList):
    for data in dataList:
        result = callServer(data["input"])
        data["originalOutput"] = result
    
def evalResult(dataList):
    pass
    
    
if __name__ == "__main__":
    input = "对于「初三女生在搀扶跌倒老奶奶后反被冤枉，但仍选择资助她千元」的新闻事件，你有什么看法？"
    #input = "能否帮我构思一下关于疫情期间在线教育优缺点的论文框架？"
    #input = "请给出“wander”这个词的三个近义词？"
    #input = "能否提供一个函数示例，该函数需要接收两个整数输入，并输出两者中较大的数值？"
    #input = "我想策划一个专为公交女乘务员设计的手工DIY活动，能提供一个详尽的活动方案吗？"
    a = time.time()
    result = callServer(input)
    b = time.time()
    
    
    print("输出长度："+str(len(result))+"字  耗时："+str(b-a)+"秒  输出速度："+str(len(result)/(b-a))+"字/秒")
    print(result)
    