Мне нужна помощь, пожалуйста, поэтому эта функция в моем app.py запрашивает API и получает ответ, который содержит массив с именем «выбор», а первый объект массива с именем «текст» — это то, что я извлекаю и сохраняю в переменной «ответ».
`
def openAIQuery (query):
response = openai.Completion.create(
model = "text-davinci-003",
prompt= query,
temperature=0.7,
max_tokens=1000,
top_p=1,
frequency_penalty=0,
presence_penalty=0)
if 'choices' in response:
if len(response['choices']) > 0:
answer = response["choices"][0]["text"]
else:
answer = "Oops sorry, you beat DaVinci this time"
else:
answer = "Oops sorry you beat DaVinci this time"
return answer
This function is another function in my app.py that should assign the returned "answer" in the openAIAnswer variable
@app.route('/product-description', methods=["GET", "POST"])
def productDescription():
if request.method == 'POST':
submission = request.form['productDescription']
query = "Write a detailed product description for: {}".format(submission),
openAIAnswer = openAIQuery(query)
prompt = 'DaVinci Suggestions for {} are: '.format( submission )
return render_template("product-description.html" )
`
моя проблема в том, что я хотел отобразить значение подсказки и openAIAnswer на другой html-странице в моем каталоге шаблонов, но это работает
`
<div class = "p-3 rounded">
<div class = "row">
<div class = "col-lg-12">
<h3 class = "text-primary">{{prompt}}</h3>
<p class = "lead">{{openAIAnswer}}</p>
</div>
</div>
</div>
` пожалуйста, мне нужно решение
всякий раз, когда я запускаю приложение и выполняю необходимые действия, я вижу из журналов ошибок, что мой запрос API вернулся с
response_code=200
но моя HTML-страница не отображает openAIAnswer, а также приглашение на HTML-странице, чего я и хочу достичь
Позже я использовал метод locals(), который возвращает словарь со всеми локальными переменными и символами для текущей программы.
например, я добавил это здесь
return render_template("product-description.html", **locals( ))
и код сработал
Вы ничего не передаете
render_template
, кроме имени шаблона. Как вы ожидаете, что он получит переменные? См. например flask.palletsprojects.com/en/2.2.x/quickstart/…