""" @author: luojunhui """ import json import requests from openai import OpenAI from tavily import TavilyClient from tencentcloud.common import credential from tencentcloud.common.profile.client_profile import ClientProfile from tencentcloud.common.profile.http_profile import HttpProfile from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException from tencentcloud.hunyuan.v20230901 import hunyuan_client, models def kimi_ai(prompt): """ kimi extract text :param prompt: :return: """ client = OpenAI( api_key='sk-5DqYCa88kche6nwIWjLE1p4oMm8nXrR9kQMKbBolNAWERu7q', base_url="https://api.moonshot.cn/v1" ) chat_completion = client.chat.completions.create( messages=[ { "role": "user", "content": prompt, } ], model="moonshot-v1-8k", ) response = chat_completion.choices[0].message.content.replace('```json', '').replace('```', '') return response def metaSo(prompt, mode="深入"): """ meta :param prompt: :param mode: :return: """ url = "http://8.217.190.241:8888/crawler/metaso/meta_ai" body = { "prompt": prompt, "mode": mode } header = { "Content-Type": "application/json" } response = requests.post(url=url, json=body, headers=header) return response.json()['data'] def tencent_ai(prompt): """ 腾讯混元aiTool :param prompt: :return: """ secret_id = "AKIDDSelkqm1BCyulT0L7iXUFvXyCKNfkcS5" secret_key = "XrJh4GLrNp7Lh4VrLsLp9NVj8W3ZgmiZ" cred = credential.Credential(secret_id, secret_key) httpProfile = HttpProfile() httpProfile.endpoint = "hunyuan.tencentcloudapi.com" clientProfile = ClientProfile() clientProfile.httpProfile = httpProfile client = hunyuan_client.HunyuanClient(cred, "ap-beijing", clientProfile) req = models.ChatCompletionsRequest() params = { "Model": "hunyuan-pro", "Messages": [ { "Role": "user", "Content": prompt } ], "Stream": False, "StreamModeration": False, "EnableEnhancement": True } try: req.from_json_string(json.dumps(params)) resp = client.ChatCompletions(req) resp_json = json.loads(str(resp)) return resp_json['Choices'][0]['Message']['Content'] except TencentCloudSDKException as err: return {"error": str(err)} def tly_ai(prompt): """ :param prompt: :return """ TLY = TavilyClient(api_key="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") response = TLY.search( query=prompt, search_depth="advanced", include_images=True, include_answer=True, include_raw_content=True ) return response