MCPcopy Create free account
hub / github.com/catid/supercharger / process_next

Method process_next

codegen/codegen_workers.py:15–72  ·  view source on GitHub ↗
(self, args, task_op, task_id, code, test, result_queue)

Source from the content-addressed store, hash-verified

13 self.active_workers = multiprocessing.Value('i', 0)
14
15 def process_next(self, args, task_op, task_id, code, test, result_queue):
16 if task_op == "code":
17 #logging.info("Generating code...")
18 t0 = time.time()
19 code = autopy_func(args.comments, args.prototype, node=args.node, port=args.port, temperature=args.temperature, max_tokens=args.max_tokens)
20 t1 = time.time()
21
22 if len(code) > 0:
23 score = autopy_code_judge(code, args.function_name, node=args.node, port=args.port)
24 else:
25 score = 0
26 t2 = time.time()
27
28 logging.info(f"Generated code len={len(code)} in {t1 - t0} seconds, with score {score} (scored in {t2 - t1} seconds)")
29
30 result_queue.put((task_op, task_id, score, code))
31
32 elif task_op == "test":
33 #logging.info("Generating test...")
34 t0 = time.time()
35 test = autopy_test(args.comments, args.prototype, args.function_name, node=args.node, port=args.port, temperature=args.temperature, max_tokens=args.max_tokens)
36 t1 = time.time()
37
38 logging.info(f"Generated test len={len(test)} in {t1 - t0} seconds")
39 result_queue.put((task_op, task_id, None, test))
40
41 elif task_op == "improve_code":
42 #logging.info("Improving code...")
43 t0 = time.time()
44 improved_code = autopy_func_improve(args.comments, code, node=args.node, port=args.port, temperature=args.temperature, max_tokens=args.max_tokens)
45 t1 = time.time()
46
47 if len(improved_code) > 0:
48 score = autopy_code_judge(improved_code, args.function_name, node=args.node, port=args.port)
49 else:
50 score = 0
51 t2 = time.time()
52
53 logging.info(f"Generated improved code input len={len(code)} output len={len(improved_code)} in {t1 - t0} seconds, with new score {score} (scored in {t2 - t1} seconds)")
54 result_queue.put(("improve_code", task_id, score, improved_code))
55
56 elif task_op == "improve_test":
57 #logging.info("Improving test...")
58 t0 = time.time()
59 improved_test = autopy_test_improve(args.comments, args.prototype, args.function_name, test, node=args.node, port=args.port, temperature=args.temperature, max_tokens=args.max_tokens)
60 t1 = time.time()
61
62 logging.info(f"Generated improved test input len={len(test)} output len={len(improved_test)} in {t1 - t0} seconds")
63 result_queue.put((task_op, task_id, None, improved_test))
64
65 elif task_op == "judge_pair":
66 #logging.info("Judging pair...")
67 t0 = time.time()
68 score = autopy_test_judge(code, args.function_name, test, node=args.node, port=args.port)
69 t1 = time.time()
70
71 logging.info(f"Judged code/test pair with score {score} in {t1 - t0} seconds")
72 result_queue.put((task_op, task_id, score, None))

Callers 1

workerMethod · 0.95

Calls 6

autopy_funcFunction · 0.90
autopy_code_judgeFunction · 0.90
autopy_testFunction · 0.90
autopy_func_improveFunction · 0.90
autopy_test_improveFunction · 0.90
autopy_test_judgeFunction · 0.90

Tested by

no test coverage detected