Rumah  >  Artikel  >  Peranti teknologi  >  Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

PHPz
PHPzke hadapan
2023-04-08 12:01:031803semak imbas

Ah Fan telah menulis sebelum ini tentang cara menyambungkan ChatGPT ke WeChat dan DingTalk Jika anda belum melihatnya, anda boleh membaca artikel di hadapan akaun rasmi Baru-baru ini, saya menemui cara yang menarik untuk memainkannya mendapat masa untuk melaksanakannya pada hujung minggu Rasanya cukup bagus, saya ingin berkongsi dengan semua orang.

Latar Belakang

Punca perkara itu ialah seorang peminat melihat mesej sebegitu dalam kalangan rakan-rakan Maklumat sensitif telah dialih keluar maksudnya adalah untuk menghubungkan OpenAI ke planet pengetahuan . Pengguna boleh Tanya soalan OpenAI melalui soalan planet OpenAI secara automatik akan menjawab soalan pengguna yang sepadan dan memberitahu pengguna.

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Sangat menarik untuk melihat perkara ini Bagi blogger yang menjalankan Knowledge Planet, terutamanya blogger teknikal, banyak mata pengetahuan teknikal yang mudah adalah sepenuhnya Jawapan boleh dijawab melalui automasi tanpa mengambil terlalu banyak. masa anda sendiri.

Sesetengah rakan mungkin bertanya, apakah perbezaan antara ini dengan Baidu pengguna sendiri?

Selagi rakan-rakan yang telah menggunakan OpenAI mempunyai pengalaman yang mendalam, terdapat banyak iklan jawapan yang dicari di Baidu Ia selalunya mengambil masa untuk mencari kandungan yang berguna dalam sejumlah besar kandungan yang serupa.

Jawapan yang disediakan oleh OpenAI selalunya jelas dan teratur Walaupun ia tidak dapat memberikan jawapan yang tepat kepada banyak soalan sensitif masa, ia masih boleh menjadi sangat tepat dalam menjawab beberapa perkara pengetahuan teknikal.

Berikut adalah beberapa kes yang peminat telah lihat, anda boleh lihat

boleh tulis kod

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

boleh jawab soalan

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Boleh menulis rangka

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Boleh menganalisis prestasi

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Membina

Selepas membaca kes di atas, anda boleh mula membinanya Pertama sekali, kita perlu tahu bagaimana untuk melaksanakan fungsi jawapan pintar automatik ini , mula-mula dapatkan jawapan untuk dijawab Senarai soalan, kemudian merentasi antara muka permintaan soalan OpenAI, dan kemudian menulis kembali hasil yang dikembalikan untuk memberitahu pengguna yang sepadan Kami perlu memproses proses ini melalui tinjauan tugas yang dijadualkan.

Ringkasnya, kita perlu menyediakan perkara berikut

  1. Akaun Knowledge Planet yang boleh diajukan soalan, iaitu orang yang ditanya
  2. Akaun OpenAI KEY API yang sepadan, langkah ini agak menyusahkan, tetapi artikel sebelumnya telah memberikan idea tentang cara mendapatkannya, yang di luar skop artikel ini Jika anda berminat, lihat artikel sebelumnya.
  3. Alat atau platform penjadualan juga boleh menjadi arahan pemasaan sistem Linux; di atas empat mata adalah perlu, tetapi sudah tentu perkara yang paling penting ialah menulis kod Menurut idea kami di atas, program kami perlu memanggil tiga antara muka
  4. untuk mendapatkan senarai masalah; 🎜>Minta OpenAI untuk mendapatkan jawapan;

Tulis kembali jawapan untuk memberitahu pengguna; advance, pihak Ah Fen Platform penjadualan untuk kegunaan mudah ialah XXL-JOB dan skrip tugas pelaksanaan yang sepadan ditulis dalam Nodejs.

Gunakan akaun yang disediakan untuk orang yang diminta untuk log masuk ke versi web Planet Pengetahuan Selepas memasuki planet yang sepadan, anda boleh melihat menu dengan [Menunggu jawapan saya].

  1. Kami membuka konsol penyemak imbas dan klik butang [Tunggu saya menjawab] untuk melihat alamat antara muka yang sepadan bagi permintaan

Ini ialah alamat antara muka pertama yang ingin kami minta, kemudian dapatkan maklumat kuki yang sepadan dan beberapa parameter melalui pengepala permintaan​ , jadi bahawa kita boleh membuat permintaan antara muka melalui kod dan mendapatkan senarai soalan yang perlu dijawab.

var options = {
url: ZSXQ_UNANSWER_URL,
headers: {
'accept': 'application/json, text/plain, */*',
'cookie': cookie,
'User-Agent': 'Mozilla/5.0 xxxx',
'x-timestamp': Math.floor(Date.now() / 1000),
}
};

request(options, callback);

Selepas mendapatkan senarai soalan, kita boleh mula merentasi antara muka OpenAI permintaan untuk mendapatkan jawapan dalam kaedah panggil balik Alamat antara muka OpenAI ialah https://api.openai.com/v1/ completions.

function callback(error, response, body) {
if (!error && response.statusCode === 200) {
let json = JSON.parse(body);
if (!json.succeeded) {
console.log("succeeded false")
process.exit(0)
}
if (json.resp_data.topics.length > 0) {
let length = json.resp_data.topics.length;
for (let i = 0; i < length; i++) {
let question = json.resp_data.topics[i].question;
topicId = json.resp_data.topics[i].topic_id;
console.log(topicId + ":" + question.text)
let openRequestOption = {
url: OPEN_AI_URL,
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer " + API_KEY,
"topicId": topicId
},
timeout: 120000,
body: {
"model": "text-davinci-003",
"prompt": question.text,
"max_tokens": 2000,
"temperature": 0.9
},
json: true
};
request.post(openRequestOption, completionsCallBack)
}
} else {
console.log("topics empty")
process.exit(0)
}
} else {
console.log("get questions error")
process.exit(-1)
}
}

Tulis jawapan yang diperoleh kembali kepada pengguna Di sini kita memerlukan alamat ketiga, yang boleh diperolehi dengan cara yang sama seperti alamat pertama Buat jawapan pada halaman dan anda boleh mendapatkan yang sepadan Jawab alamat, tetapi kami perlu menggantikan ID topik sendiri Ini agak mudah, jadi kami tidak akan mengambil tangkapan skrin dan hanya memuat naik kod.

// 智能回答
function completionsCallBack(error, response, body) {
if (!error && response.statusCode === 200) {
if (null != body && body.choices.length > 0) {
let reply = body.choices[0].text;
console.log(response.request.headers.topicId + ":" + reply);
if (null != reply && reply.length > 0) {
// 回答问题并通知提问者
let answerOptions = {
url: ZSXQ_ANSWER_URL + "/" + response.request.headers.topicId + "/answer",
headers: {
'accept': 'application/json, text/plain, */*',
'cookie': cookie,
'User-Agent': 'Mozilla/5.0 xxx',
'x-timestamp': Math.floor(Date.now() / 1000),
},
timeout: 12000,
body: {
"req_data": {
"image_ids": [],
"silenced": silenced,
"text": reply
}
},
json: true
}
request.post(answerOptions, answerCallBack)
}
}
} else {
console.log("get answer error")
process.exit(-1)
}
}

// 回答后调用
function answerCallBack(error, response, body) {
if (response.statusCode === 200 && body.succeeded) {
console.log(":智能回答成功");
//process.exit(0) 
} else {
console.log(":智能回答失败");
//process.exit(-1)
}
}

Pada ketika ini, fungsi yang sepadan pada dasarnya telah dilaksanakan Terdapat beberapa butiran yang dijelaskan secara ringkas

  1. Disenyapkan dalam parameter antara muka jawapan tulis balik mewakili sama ada untuk memberitahu. orang lain, benar Ini bermakna hanya memberitahu penyoal Salah bermakna memberitahu semua orang bermakna semua orang boleh melihat jawapannya, hanya penyoal akan melihat jawapannya apabila penyahpepijatan dimulakan ditetapkan kemudian apabila ia menjadi palsu.
  2. Oleh kerana fungsi ini perlu dicetuskan melalui tugasan berjadual, untuk mengelakkan masalah yang tidak perlu, anda boleh menetapkan masa yang munasabah sendiri tidak rugi untuk menjawab soalan orang lain kemudiannya, kekerapan penjadualan tidak boleh terlalu kerap dan harus digunakan dengan cara yang rendah.

Kesan

Konfigurasikan tugas NodeJs pada XXL-JOB​,

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.

Anda dapat melihat bahawa Afan telah menentukan masa yang sepadan sebelum membuat pertanyaan . Cool~

Ringkasan

Hari ini saya membawakan anda cara lain untuk bermain OpenAI Seorang peminat telah menyediakan beberapa cara untuk bermain, yang semuanya dipelajari dan diteliti sendiri , tujuannya adalah untuk memastikan semua orang bersemangat apabila menghadapi perkara dan teknologi baharu. Kita tidak boleh bersikap konservatif tentang kedatangan teknologi baharu, tetapi mesti mengalu-alukannya.

Atas ialah kandungan terperinci Saya menemui satu lagi cara menarik untuk bermain ChatGPT dan berkongsi dengan semua orang.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam