6 Commits

Author SHA1 Message Date
16562b595f fix: change CONTRIBUTORS to hengyan 2026-07-22 09:02:42 +08:00
a7efcbff76 chore: limit crawler pages to 20 2026-07-22 08:58:15 +08:00
5cd21c1128 debug: add submission logging 2026-07-21 18:24:41 +08:00
020964d3b3 chore: switch to production mode 2026-07-21 17:49:43 +08:00
54620c8d0b chore: update STRATEGY_ID to v1.0.3 2026-07-21 17:47:28 +08:00
de8b3f0840 fix: sqlite cross-thread access 2026-07-21 17:42:40 +08:00
3 changed files with 10 additions and 6 deletions

View File

@@ -1,6 +1,9 @@
from app.clients.modelhub import ModelHubClient from app.clients.modelhub import ModelHubClient
from app.domain.vllm_configs import gen_vllm_config from app.domain.vllm_configs import gen_vllm_config
from app.storage.repositories import Repository, future_seconds from app.storage.repositories import Repository, future_seconds
import logging
LOG = logging.getLogger(__name__)
class Submitter: class Submitter:
@@ -13,6 +16,7 @@ class Submitter:
for task in self.repo.due_tasks(("ready_to_submit",), limit=limit): for task in self.repo.due_tasks(("ready_to_submit",), limit=limit):
config = gen_vllm_config(task["gpu_type"], task["model_id"], task["max_model_len"]) config = gen_vllm_config(task["gpu_type"], task["model_id"], task["max_model_len"])
result = self.client.create_contest_task(task["model_id"], task["gpu_type"], config) result = self.client.create_contest_task(task["model_id"], task["gpu_type"], config)
LOG.info("submit %s / %s / %s -> %s (%s)", task["model_id"], task["gpu_type"], task["source"], result.result, result.message)
self.repo.record_submission_attempt( self.repo.record_submission_attempt(
task["id"], task["id"],
task["model_id"], task["model_id"],

View File

@@ -10,7 +10,7 @@ def connect(db_path: str) -> sqlite3.Connection:
parent = os.path.dirname(os.path.abspath(db_path)) parent = os.path.dirname(os.path.abspath(db_path))
if parent and not os.path.exists(parent): if parent and not os.path.exists(parent):
os.makedirs(parent, exist_ok=True) os.makedirs(parent, exist_ok=True)
conn = sqlite3.connect(db_path, timeout=30) conn = sqlite3.connect(db_path, timeout=30, check_same_thread=False)
conn.row_factory = sqlite3.Row conn.row_factory = sqlite3.Row
conn.execute("PRAGMA journal_mode=WAL") conn.execute("PRAGMA journal_mode=WAL")
conn.execute("PRAGMA busy_timeout=30000") conn.execute("PRAGMA busy_timeout=30000")

View File

@@ -4,8 +4,8 @@
"CONFTEST_API_TOKEN": "0f3c1fd38fbac493cf3760ce4aaeac90", "CONFTEST_API_TOKEN": "0f3c1fd38fbac493cf3760ce4aaeac90",
"EMAIL": "i-hengyan@4paradigm.com", "EMAIL": "i-hengyan@4paradigm.com",
"USER_ID": "83", "USER_ID": "83",
"CONTRIBUTORS": "i-hengyan", "CONTRIBUTORS": "hengyan",
"STRATEGY_ID": "2e5ee92b-ea07-487a-bcfd-02e51be7f6bb", "STRATEGY_ID": "a2514012-5ac8-4187-a3dd-8d74d8582827",
"MODELHUB_URL": "https://modelhub.org.cn", "MODELHUB_URL": "https://modelhub.org.cn",
"MODELHUB_API_BASE": "https://modelhub.org.cn/api", "MODELHUB_API_BASE": "https://modelhub.org.cn/api",
@@ -15,7 +15,7 @@
"HOST": "0.0.0.0", "HOST": "0.0.0.0",
"PORT": 8080, "PORT": 8080,
"SUBMIT_DRY_RUN": true, "SUBMIT_DRY_RUN": false,
"INJECT_STRATEGY_ID": true, "INJECT_STRATEGY_ID": true,
"CONTEST_TASK_STRATEGY_FIELD": "strategyId", "CONTEST_TASK_STRATEGY_FIELD": "strategyId",
@@ -32,11 +32,11 @@
"TARGET_MACHINE_NAMES": "MTT S4000,Hygon K100,Kunlunxin P800", "TARGET_MACHINE_NAMES": "MTT S4000,Hygon K100,Kunlunxin P800",
"TARGET_TASK_LEVEL": "文本生成", "TARGET_TASK_LEVEL": "文本生成",
"MODELHUB_PAGE_SIZE": 100, "MODELHUB_PAGE_SIZE": 100,
"CRAWLER_MAX_PAGES": 0, "CRAWLER_MAX_PAGES": 20,
"ENABLE_DOWNLOAD_SUCCESS_CRAWLER": true, "ENABLE_DOWNLOAD_SUCCESS_CRAWLER": true,
"DOWNLOAD_SUCCESS_PAGE_SIZE": 50, "DOWNLOAD_SUCCESS_PAGE_SIZE": 50,
"DOWNLOAD_SUCCESS_MAX_PAGES": 0, "DOWNLOAD_SUCCESS_MAX_PAGES": 20,
"BOUNTY_ALLOW_DIRECT_SUBMIT": true, "BOUNTY_ALLOW_DIRECT_SUBMIT": true,
"AUTO_LOAD_SEED_PATH": "" "AUTO_LOAD_SEED_PATH": ""