-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathChatGPT_API.PHP
110 lines (89 loc) · 2.76 KB
/
ChatGPT_API.PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<?php
#~~~~~~~ ChatGPT API By AGC007 ~~~~~~~#
#---------------- Get Question --------------------#
if($_GET['Question'] != "" && $_GET['Type'] != "")
{
$Question = $_GET['Question'];
$Authorization = "*****";
if($_GET['Type'] == "NormalMode")#Normal_ChatGPT
{
ChatGPT_NormalMode_API($Authorization , $Question);
}
elseif($_GET['Type'] == "No_NormalMode")#No_Normal_ChatGPT
{
ChatGPT_No_NormalMode_API($Authorization ,$Question);
}
}
#---------------- Get Question --------------------#
#---------------- ChatGPT API Normal --------------------#
function ChatGPT_NormalMode_API($Authorization , $Question)
{
$REQ = curl_init();
curl_setopt_array(
$REQ ,
array(
CURLOPT_URL => 'https://api.openai.com/v1/chat/completions',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>
'{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "'.$Question.'"}],
"temperature": 0.7,
"max_tokens": 4000,
"top_p": 1.0,
"frequency_penalty": 0.0,
"presence_penalty": 0.0
}',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer '.$Authorization,
'Content-Type: application/json'
),
)
);
echo $Response = curl_exec($REQ);
curl_close($REQ);
}
#---------------- ChatGPT API Normal --------------------#
#---------------- ChatGPT API No Normal --------------------#
function ChatGPT_No_NormalMode_API($Authorization , $Question)
{
$REQ = curl_init();
curl_setopt_array(
$REQ ,
array(
CURLOPT_URL => 'https://api.openai.com/v1/completions',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'
{
"model": "text-davinci-003",
"prompt": "'.$Question.'",
"temperature": 1,
"max_tokens": 4000,
"top_p": 1.0,
"frequency_penalty": 0.0,
"presence_penalty": 0.0
}',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer '.$Authorization,
'Content-Type: application/json'
),
)
);
echo $Response = curl_exec($REQ);
curl_close($REQ);
}
#---------------- ChatGPT API No Normal --------------------#
#~~~~~~~ ChatGPT API By AGC007 ~~~~~~~#
?>