Heyyaha commited on
Commit
b8de861
·
verified ·
1 Parent(s): ccdf7cd

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -45
app.py CHANGED
@@ -3,6 +3,7 @@ import os
3
  from datetime import datetime
4
  from gradio_client import Client
5
  import re
 
6
  import json
7
 
8
  # 初始化任务生成客户端(腾讯混元 Space)
@@ -14,8 +15,11 @@ os.makedirs(OUTPUT_DIR, exist_ok=True)
14
  # 拆解 JD 成任务
15
  def extract_task_from_jd(jd):
16
  message = f"""你是一个岗位分析助手,请根据以下JD内容提取一个可以用来测试候选人核心能力的具体任务。
17
- 请确保任务具体且与岗位相关技能密切匹配,特别是技术岗位时,任务应包括实际的编程、算法设计或系统架构等内容。
18
- 任务要求应具备一定的技术深度,能够考察候选人的核心能力。
 
 
 
19
 
20
  JD: {jd}"""
21
  response = taskgen_client.predict(message=message, api_name="/chat")
@@ -24,52 +28,13 @@ JD: {jd}"""
24
  # 基于任务生成三个解决方案
25
  def generate_solutions_from_task(task):
26
  message = f"""你是一个解决方案生成助手,请根据以下任务设计三种不同的实现思路。
27
- 每个方案需要包含详细的步骤,具体的操作流程,并在每个步骤中提供执行细节。请确保每个方案的字数不少于200字。
28
- 方案需要详细到以下几个方面:
29
  1. 总体思路:解决方案的总体思路与背景。
30
- 2. 执行步骤:实现该方案的详细步骤,分步操作,字数要求至少50字。
31
- 3. 技术栈:使用的具体技术、工具或框架。
32
  4. 代码示例(如果适用):相关技术实现的代码片段。
33
  5. 挑战与解决方案:在实现过程中可能遇到的技术难题以及相应的解决方法。
34
 
35
  请严格按如下格式输出,每个方案应包含详细信息,字数不少于200字:
36
  方案1:
37
- 1. 总体思路: (简述方案的总体设计思想)
38
- 2. 执行步骤: (具体的实现步骤,最好有分步)
39
- 3. 技术栈: (技术栈、工具、框架)
40
- 4. 代码示例: (如果适用,提供相关代码片段)
41
- 5. 挑战与解决方案: (在实现过程中可能遇到的问题和解决方法)
42
-
43
- 方案2:
44
- 1. 总体思路: (简述方案的总体设计思想)
45
- 2. 执行步骤: (具体的实现步骤,最好有分步)
46
- 3. 技术栈: (技术栈、工具、框架)
47
- 4. 代码示例: (如果适用,提供相关代码片段)
48
- 5. 挑战与解决方案: (在实现过程中可能遇到的问题和解决方法)
49
-
50
- 方案3:
51
- 1. 总体思路: (简述方案的总体设计思想)
52
- 2. 执行步骤: (具体的实现步骤,最好有分步)
53
- 3. 技术栈: (技术栈、工具、框架)
54
- 4. 代码示例: (如果适用,提供相关代码片段)
55
- 5. 挑战与解决方案: (在实现过程中可能遇到的问题和解决方法)
56
-
57
- 任务: {task}"""
58
-
59
- # 直接输出原始响应内容以便调试
60
- response = taskgen_client.predict(message=message, api_name="/chat")
61
- print("原始响应内容:", response)
62
-
63
- # 直接返回响应内容,便于分析
64
- return response.strip()
65
-
66
- # 构建 Gradio UI
67
- def build_ui():
68
- with gr.Blocks() as demo:
69
- gr.Markdown("## 📌 JD 任务拆解 + 解决方案选择 Demo")
70
-
71
- jd_input = gr.Textbox(label="输入 JD", placeholder="请输入岗位描述 JD")
72
- task_output = gr.Textbox(label="拆解出的测试任务", lines=2, interactive=False)
73
- generate_task_btn = gr.Button("🧠 拆解 JD 成任务")
74
-
75
- generate_solutions_btn = gr.Button("🚀 基于任务生成三个方案")
 
3
  from datetime import datetime
4
  from gradio_client import Client
5
  import re
6
+ import uuid
7
  import json
8
 
9
  # 初始化任务生成客户端(腾讯混元 Space)
 
15
  # 拆解 JD 成任务
16
  def extract_task_from_jd(jd):
17
  message = f"""你是一个岗位分析助手,请根据以下JD内容提取一个可以用来测试候选人核心能力的具体任务。
18
+ 请确保任务具有一定的技术深度,特别是在编程、算法设计、系统架构或其他技术方面的能力。
19
+ 任务的描述需要清晰且具体,能够考察候选人对于该岗位要求的核心技能。
20
+
21
+ 请以如下格式回复:
22
+ 任务:(任务描述)
23
 
24
  JD: {jd}"""
25
  response = taskgen_client.predict(message=message, api_name="/chat")
 
28
  # 基于任务生成三个解决方案
29
  def generate_solutions_from_task(task):
30
  message = f"""你是一个解决方案生成助手,请根据以下任务设计三种不同的实现思路。
31
+ 每个方案需要包含详细的步骤,具体的操作流程,并在每个步骤中提供执行细节。请确保每个方案的字数不少于200字,并且要包含以下内容:
 
32
  1. 总体思路:解决方案的总体思路与背景。
33
+ 2. 执行步骤:实现该方案的详细步骤,最好分步操作,字数要求至少50字。
34
+ 3. 技术栈:使用的具体技术、工具、框架和技术栈。
35
  4. 代码示例(如果适用):相关技术实现的代码片段。
36
  5. 挑战与解决方案:在实现过程中可能遇到的技术难题以及相应的解决方法。
37
 
38
  请严格按如下格式输出,每个方案应包含详细信息,字数不少于200字:
39
  方案1:
40
+ 1. 总体思路: