From 8aa034b8b9c6249007f3e96abeb733a757dbcec1 Mon Sep 17 00:00:00 2001 From: Pierre Malarme Date: Fri, 17 May 2024 12:09:26 +0200 Subject: [PATCH] Enable dynamic setting of Azure OpenAI API version --- backend/api.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/backend/api.py b/backend/api.py index 2e27ce6..c4c09eb 100644 --- a/backend/api.py +++ b/backend/api.py @@ -16,7 +16,7 @@ openai.api_type = 'azure' openai.api_key = API_KEY if API_KEY else '' openai.api_base = RESOURCE_ENDPOINT if RESOURCE_ENDPOINT else 'https://.openai.azure.com' -openai.api_version = '2023-03-15-preview' +openai.api_version = os.getenv('OPENAI_API_VERSION', '2023-03-15-preview') os.environ['OPENAI_API_TYPE'] = openai.api_type os.environ['OPENAI_API_BASE'] = openai.api_base @@ -105,5 +105,21 @@ def ask(): error = 'Invalid request' return make_response(error, 400) +@app.route('/api/version', methods=['GET']) +@cross_origin() +def get_openai_api_version(): + return make_response({'version': openai.api_version}, 200) + +@app.route('/api/version', methods=['POST']) +@cross_origin() +def set_openai_api_version(): + data = request.get_json() + if 'version' in data: + openai.api_version = data['version'] + os.environ['OPENAI_API_VERSION'] = data['version'] + return make_response({'message': 'OpenAI API version updated successfully.', 'version': openai.api_version}, 200) + else: + return make_response({'message': 'Version not specified.'}, 400) + if __name__ == '__main__': - app.run(host='0.0.0.0', port=5000) \ No newline at end of file + app.run(host='0.0.0.0', port=5000)