Spaces:
Running
Running
File size: 1,052 Bytes
1c817fd e83e49f 1c817fd e83e49f 1c817fd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
from flask import jsonify, send_file, request
from main import *
def generate_code(prompt, output_path="output_code.py"):
if codegen_model is None or codegen_tokenizer is None:
return "Code generation model or tokenizer not initialized."
input_ids = codegen_tokenizer(prompt, return_tensors='pt').to(device)
output = codegen_model.generate(input_ids, max_length=2048, temperature=0.7, top_p=0.9)
code = codegen_tokenizer.decode(output[0], skip_special_tokens=True)
with open(output_path, "w") as file:
file.write(code)
return output_path
def codegen_api():
data = request.get_json()
prompt = data.get('prompt')
if not prompt:
return jsonify({"error": "Prompt is required"}), 400
output_file = generate_code(prompt)
if output_file == "Code generation model or tokenizer not initialized.":
return jsonify({"error": "Code generation failed"}), 500
return send_file(output_file, mimetype="text/x-python", as_attachment=True, download_name="output.py")
|