Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -3,9 +3,10 @@ import gradio as gr
|
|
3 |
import xgboost as xgb
|
4 |
import numpy as np
|
5 |
import pandas as pd
|
|
|
6 |
from huggingface_hub import hf_hub_download
|
7 |
|
8 |
-
# **📌 先运行 `preprocess.py`
|
9 |
if not os.path.exists("processed_data.csv"):
|
10 |
print("📌 运行 `preprocess.py` 进行数据处理...")
|
11 |
os.system("python preprocess.py")
|
@@ -22,6 +23,24 @@ model_path = hf_hub_download(repo_id="YDluffy/lottery_prediction", filename="lot
|
|
22 |
model = xgb.XGBRegressor()
|
23 |
model.load_model(model_path)
|
24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
# **📌 预测函数**
|
26 |
def predict_lottery(year, period, num1, num2, num3, num4, num5, num6, special):
|
27 |
# 从历史数据查找对应的月份和日期
|
@@ -44,16 +63,11 @@ def predict_lottery(year, period, num1, num2, num3, num4, num5, num6, special):
|
|
44 |
|
45 |
# **📌 Gradio Web 界面**
|
46 |
iface = gr.Interface(
|
47 |
-
fn=
|
48 |
-
inputs=
|
49 |
-
gr.Number(label="年份"), gr.Number(label="期数"),
|
50 |
-
gr.Number(label="号码1"), gr.Number(label="号码2"), gr.Number(label="号码3"),
|
51 |
-
gr.Number(label="号码4"), gr.Number(label="号码5"), gr.Number(label="号码6"),
|
52 |
-
gr.Number(label="特别号码")
|
53 |
-
],
|
54 |
outputs="text",
|
55 |
title="六合彩预测模型",
|
56 |
-
description="
|
57 |
)
|
58 |
|
59 |
# **📌 启动 Gradio 应用**
|
|
|
3 |
import xgboost as xgb
|
4 |
import numpy as np
|
5 |
import pandas as pd
|
6 |
+
import requests
|
7 |
from huggingface_hub import hf_hub_download
|
8 |
|
9 |
+
# **📌 先运行 `preprocess.py` 处理数据**
|
10 |
if not os.path.exists("processed_data.csv"):
|
11 |
print("📌 运行 `preprocess.py` 进行数据处理...")
|
12 |
os.system("python preprocess.py")
|
|
|
23 |
model = xgb.XGBRegressor()
|
24 |
model.load_model(model_path)
|
25 |
|
26 |
+
# **📌 调用 LLM API 解析用户输入**
|
27 |
+
LLM_API_URL = "https://your-llm-space.gradio.app" # 替换为 LLM 服务器地址
|
28 |
+
|
29 |
+
def get_prediction_from_llm(user_input):
|
30 |
+
# 调用 LLM 提取预测所需的特征
|
31 |
+
response = requests.post(LLM_API_URL + "/api/predict", json={"input": user_input})
|
32 |
+
llm_output = response.json().get("prediction", "")
|
33 |
+
|
34 |
+
# 解析 LLM 输出(示例解析)
|
35 |
+
year, period = 2025, 16
|
36 |
+
nums = [5, 12, 23, 34, 45, 56]
|
37 |
+
special = 7
|
38 |
+
|
39 |
+
# **📌 预测**
|
40 |
+
prediction = predict_lottery(year, period, *nums, special)
|
41 |
+
|
42 |
+
return f"预测的号码是: {prediction}\n\n模型解析的特征:{llm_output}"
|
43 |
+
|
44 |
# **📌 预测函数**
|
45 |
def predict_lottery(year, period, num1, num2, num3, num4, num5, num6, special):
|
46 |
# 从历史数据查找对应的月份和日期
|
|
|
63 |
|
64 |
# **📌 Gradio Web 界面**
|
65 |
iface = gr.Interface(
|
66 |
+
fn=get_prediction_from_llm,
|
67 |
+
inputs=gr.Textbox(label="请输入问题或期号信息"),
|
|
|
|
|
|
|
|
|
|
|
68 |
outputs="text",
|
69 |
title="六合彩预测模型",
|
70 |
+
description="通过与 LLM 交互,解析输入信息并进行预测"
|
71 |
)
|
72 |
|
73 |
# **📌 启动 Gradio 应用**
|