in function_app/bp_summarize_text.py [0:0]
def summarize_text(req: func.HttpRequest) -> func.HttpResponse:
try:
logging.info(
f"Python HTTP trigger function `{FUNCTION_ROUTE}` received a request."
)
# Check the request body
req_body = req.get_json()
request_obj = FunctionRequestModel(**req_body)
except Exception as _e:
return func.HttpResponse(
(
"The request body was not in the expected format. Please ensure that it is "
"a valid JSON object with the following fields: {}"
).format(list(FunctionRequestModel.model_fields.keys())),
status_code=422,
)
try:
# Create the messages to send to the LLM
input_messages = [
{
"role": "system",
"content": LLM_SYSTEM_PROMPT.format(
request_obj.num_sentences, request_obj.summary_style
),
},
{
"role": "user",
"content": request_obj.text,
},
]
# Send request to LLM
llm_result = aoai_client.chat.completions.create(
messages=input_messages,
model=AOAI_LLM_DEPLOYMENT,
)
llm_text_response = llm_result.choices[0].message.content
# All steps completed successfully, set success=True and return the final result
return func.HttpResponse(
body=llm_text_response,
status_code=200,
)
except Exception as _e:
logging.exception("An error occurred during processing.")
return func.HttpResponse(
"An error occurred during processing.",
status_code=500,
)