File size: 1,653 Bytes
e0fc0a8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import gradio as gr
from openai import OpenAI
from app.deepseek.instructions import create_apply_editing_messages_deepseek


def run_deepseek_llm_inference(llm_model, messages):
    response = llm_model.chat.completions.create(
        model="deepseek-chat",
        messages=messages
    )
    response_str = response.choices[0].message.content
    return response_str


from openai import AuthenticationError, APIConnectionError, RateLimitError, BadRequestError, APIError

def llm_response_prompt_after_apply_instruction(image_caption, editing_prompt):
    try:
        messages = create_apply_editing_messages_deepseek(image_caption, editing_prompt)
        response_str = run_deepseek_llm_inference(llm_model, messages)
        return response_str
    except AuthenticationError as e:
        raise gr.Error(f"认证失败: 请检查API密钥是否正确 (错误详情: {e.message})")
    except APIConnectionError as e:
        raise gr.Error(f"连接异常: 请检查网络连接后重试 (错误详情: {e.message})")
    except RateLimitError as e:
        raise gr.Error(f"请求超限: 请稍后重试 (错误详情: {e.message})")
    except BadRequestError as e:
        if "model" in e.message.lower():
            raise gr.Error(f"模型错误: 请检查模型名称是否正确 (错误详情: {e.message})")
        raise gr.Error(f"无效请求: 请检查输入参数 (错误详情: {e.message})")
    except APIError as e:
        raise gr.Error(f"API异常: 服务端返回错误 (错误详情: {e.message})")
    except Exception as e:
        raise gr.Error(f"未预期错误: {str(e)},请检查控制台日志获取详细信息")