12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- import json
- import openai
- from flask import Flask, request, jsonify
- import re
- import os
- import time
- from openai import ChatCompletion
- app = Flask(__name__)
- ssl = None
- # ssl =('/etc/ssl/sample.crt', '/etc/ssl/sample.pem')
- openai_key = os.environ.get("OPENAI_KEY", "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")
- openai.api_key = openai_key
- app.chat_messages = [
- {"role": "system",
- "content": "Jawab hanya dengan bahasa Indonesia"}
- ]
- @app.route('/', methods=['GET', 'POST'])
- def test():
- return jsonify({"status": "0"})
- @app.route('/gpt', methods=['POST'])
- def gpt():
- chat_messages = app.chat_messages.copy()
- json_payload = request.get_json()
- if not json_payload:
- json_payload = []
- if isinstance(json_payload, dict):
- json_payload = [json_payload]
- json_payload = json_payload[-5:]
- for message in json_payload:
- content = message['content']
- content_arr = content.split(" ")
- new_content_arr = content[:250].split(" ")
- new_content_len = len(new_content_arr)
- arr = []
- for i in range(new_content_len):
- arr.append(content_arr[i])
- message['content'] = " ".join(arr)
- chat_messages.append(message)
- print(chat_messages)
- result = {}
- try:
- json_response = openai.ChatCompletion.create(model="gpt-3.5-turbo", # GPT-3.5 Turbo engine
- messages=chat_messages,
- max_tokens=300, temperature=0.6)
- print(json_response.choices[0].message)
- result = json_response.choices[0].message
- except Exception as error_print:
- print(error_print)
- result = {}, 405
- return result
- # Press the green button in the gutter to run the script.
- if __name__ == '__main__':
- app.run(host='0.0.0.0', port=8348, debug=True, ssl_context=ssl)
- # See PyCharm help at https://www.jetbrains.com/help/pycharm/
|