Seunggg commited on
Commit
1c0fdf3
·
verified ·
1 Parent(s): f5f891b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -15
app.py CHANGED
@@ -41,24 +41,29 @@ pipe = pipeline(
41
 
42
  from ask_api import ask_with_sensor # 引入调用函数
43
 
44
- def respond(user_input, sensor_data_input):
45
  if not user_input.strip():
46
- return "请输入植物相关的问题 :)"
47
 
48
- # 1. 本地 LoRA 生成的结果
49
- prompt = f"{user_input}\n请用人性化语言生成建议并推荐相关植物资料。\n回答:"
50
- local_result = pipe(prompt)[0]["generated_text"].replace(prompt, "").strip()
51
-
52
- # 2. Render API 分析结果
53
  try:
54
- sensor_data = eval(sensor_data_input) if sensor_data_input else {}
55
- except:
56
- sensor_data = {}
57
-
58
- api_result = ask_with_sensor(user_input, sensor_data)
59
-
60
- return f"💡 本地建议:\n{local_result}\n\n🌐 传感器分析:\n{api_result}"
61
-
 
 
 
 
 
 
 
 
 
62
 
63
  # Gradio 界面
64
  gr.Interface(
 
41
 
42
  from ask_api import ask_with_sensor # 引入调用函数
43
 
44
+ def respond(user_input):
45
  if not user_input.strip():
46
+ return "请输入植物相关的问题 😊"
47
 
48
+ # 获取 Render 实时传感器数据
 
 
 
 
49
  try:
50
+ sensor_response = requests.get("https://arduino-realtime.onrender.com/api/data", timeout=5)
51
+ sensor_data = sensor_response.json().get("sensorData", None)
52
+ except Exception as e:
53
+ sensor_data = None
54
+
55
+ # 生成用于 LoRA 本地推理的 prompt
56
+ prompt = f"用户提问:{user_input}\n"
57
+ if sensor_data:
58
+ prompt += f"当前传感器数据:{json.dumps(sensor_data, ensure_ascii=False)}\n"
59
+ prompt += "请用更人性化的语言生成建议,并推荐相关植物文献或资料。\n回答:"
60
+
61
+ # 本地 LoRA 推理
62
+ try:
63
+ result = pipe(prompt)
64
+ return result[0]["generated_text"]
65
+ except Exception as e:
66
+ return f"生成建议时出错:{str(e)}"
67
 
68
  # Gradio 界面
69
  gr.Interface(