Do you have OPEN AI ( ChatGPT API library PBL)? I'm trying to test it with the source code below, but it says there is no supported library.
- Below -
string ls_api_key, ls_question, ls_answer
n_cst_openai_api n_api
window w_question
// 테이블 생성 (만약 Tbl_API_QA 테이블이 이미 존재한다면 아무런 작업도 하지 않음)
if NOT tablepresent('Tbl_API_QA') then
CREATE TABLE Tbl_API_QA (
question VARCHAR(255),
answer VARCHAR(255)
)
end if
// OpenAI GPT-3 API 키
//ls_api_key = 'your_api_key_here'
//신준기 ChatGPT API 키값
ls_api_key = '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'
// API 연결
n_api = create n_cst_openai_api
n_api.of_SetAPIKey(ls_api_key)
// 질문 입력 화면 생성
w_question = CREATE window w_question WITH TITLE = '질문 입력' HEIGHT = 200 WIDTH = 400 MAXIMIZE = false MINIMIZE = false MENU = false
// 질문 입력 필드 생성
w_question.createTextEdit('te_question', 10, 10, 380, 50)
// 답변 출력 필드 생성
w_question.createTextEdit('te_answer', 10, 70, 380, 100, ReadOnly!)
// 질문 입력 버튼 생성
w_question.createPushButton('pb_ask', 10, 180, 180, 20, '질문하기')
// 닫기 버튼 생성
w_question.createPushButton('pb_close', 200, 180, 190, 20, '닫기')
// 질문 입력 버튼 클릭 이벤트
w_question.pb_ask.Object.DataWindow.Table.Update = true
w_question.pb_ask.Clicked = true
w_question.pb_ask.clicked = pb_ask_Clicked
w_question.te_question.modified = false
// 닫기 버튼 클릭 이벤트
w_question.pb_close.Object.DataWindow.Table.Update = true
w_question.pb_close.Clicked = true
w_question.pb_close.clicked = pb_close_Clicked
// 질문 입력 화면 열기
w_question.open()
// API 연결 종료
n_api.of_Release()
// 질문 입력 버튼 클릭 이벤트 함수
FUNCTION pb_ask_Clicked ()
string ls_question, ls_answer
n_cst_openai_api n_api
// 질문 가져오기
ls_question = w_question.te_question.text
// ChatGPT API 호출
n_api = create n_cst_openai_api
n_api.of_SetAPIKey(ls_api_key)
ls_answer = n_api.of_GenerateText(ls_question)
// 결과 출력
w_question.te_answer.text = ls_answer
w_question.te_answer.setfocus()
// API 객체 해제
n_api.of_Release()
// 질문과 답변 테이블에 저장
DECLARE q_insert RECORD
q_insert.question = ls_question
q_insert.answer = ls_answer
INSERT INTO Tbl_API_QA (question, answer) VALUES (q_insert.question, q_insert.answer)
END FUNCTION
// 닫기 버튼 클릭 이벤트 함수
FUNCTION pb_close_Clicked ()
w_question.close()
END FUNCTION