Skip to main content

answer

description: "ตอบคำถามโดยอิงจากบริบทข้อความภาษาไทยที่ให้มา"
---

import Text2TextDemo from '@site/src/components/Text2TextBox';
import DemoNlpCommonResult from '@site/src/components/DemoResult/nlp';
import ApiCallStats from '@site/src/components/ApiCallStats';
import ApiPerformanceGraphs from '@site/src/components/ApiPerformanceGraphs';

# 📝❔ ระบบตอบคำถามอัตโนมัติภาษาไทย (ThaiQA)

<div className="api-info-box" style={{backgroundColor: '#f0f9ff', padding: '16px', borderRadius: '12px', marginBottom: '16px', border: '1px solid #bae6fd'}}>
<div className="api-info-price-row" style={{fontSize: '1.5rem', fontWeight: 'bold', color: '#0c4a6e', marginBottom: '8px'}}>
<i className="fa-solid fa-coins" style={{marginRight: '8px', color: '#0284c7'}}></i>
<span className="api-info-price" style={{color: '#0284c7'}}>1 IC</span>
<span className="api-info-unit" style={{fontSize: '1rem', fontWeight: 'normal', color: '#475569', marginLeft: '8px'}}>ต่อ 400 ตัวอักษร</span>
</div>
<div className="api-info-meta" style={{fontSize: '0.8rem', color: '#64748b', display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center'}}>
<ApiCallStats />
<span><strong><i className="fa-solid fa-tag" style={{marginRight: '4px'}}></i> v1.0</strong></span>
<span><i className="fa-solid fa-circle-check" style={{marginRight: '4px', color: '#22c55e'}}></i> เปิดใช้งาน</span>
<span><i className="fa-solid fa-location-dot" style={{marginRight: '4px'}}></i> POST <code>/v3/store/nlp/question/answer</code></span>
</div>
</div>

<ApiPerformanceGraphs />

ยินดีต้อนรับสู่ API การตอบคำถามภาษาไทยของ iApp ซึ่งเป็นผลิตภัณฑ์ AI ที่พัฒนาโดย บริษัท ไอแอพพ์เทคโนโลยี จำกัด API ของเรามีความสามารถอันทรงพลังในการดึงคำตอบจากข้อความภาษาไทยตามคำถาม โดยใช้เทคนิคการประมวลผลภาษาธรรมชาติ (NLP) ขั้นสูงเพื่อทำความเข้าใจบริบทและให้คำตอบที่เกี่ยวข้อง

## ทดลองใช้งาน Demo

<Text2TextDemo
endpointUrl="https://api.iapp.co.th/v3/store/nlp/question/answer/v3"
firstinputTitle="กรุณาป้อนเนื้อหาภาษาไทยที่นี่"
firsttextInput="กรุงเทพมหานคร เป็นเมืองหลวงและนครที่มีประชากรมากที่สุดของประเทศไทย เป็นศูนย์กลางการปกครอง การศึกษา การคมนาคมขนส่ง การเงินการธนาคาร การพาณิชย์ การสื่อสาร และความเจริญของประเทศ เป็นเมืองที่มีชื่อยาวที่สุดในโลก ตั้งอยู่บนสามเหลี่ยมปากแม่น้ำเจ้าพระยา มีแม่น้ำเจ้าพระยาไหลผ่านและแบ่งเมืองออกเป็น 2 ฝั่ง คือ ฝั่งพระนครและฝั่งธนบุรี กรุงเทพมหานครมีพื้นที่ทั้งหมด 1,568.737 ตร.กม. มีประชากรตามทะเบียนราษฎรกว่า 5 ล้านคน ทำให้กรุงเทพมหานครเป็นเอกนคร (Primate City) จัด มีผู้กล่าวว่า กรุงเทพมหานครเป็น ‘เอกนครที่สุดในโลก’ เพราะมีประชากรมากกว่านครที่มีประชากรมากเป็นอันดับ 2 ถึง 40 เท่า"
secondInputTitle="กรุณาป้อนคำถามของคุณเป็นภาษาไทยที่นี่"
secondtextInput="กรุงเทพมหานครมีพื้นที่ทั้งหมดเท่าไหร่"
keyendpoint="thai-qa"
submitTitle="ประมวลผล"
customDemoResultView={(result,question,apiType,isSafari) => DemoNlpCommonResult(result,question,apiType,isSafari)}
/>

## เริ่มต้นใช้งาน

1. **ข้อกำหนดเบื้องต้น**

- API Key จาก ไอแอพพ์เทคโนโลยี
- ข้อความภาษาไทยและคำถาม
- การเชื่อมต่ออินเทอร์เน็ต

2. **เริ่มต้นใช้งานอย่างรวดเร็ว**

- ดึงคำตอบได้อย่างรวดเร็ว
- การตอบสนองที่มีความแม่นยำสูง
- อินเทอร์เฟซ REST API ที่ใช้งานง่าย

3. **คุณสมบัติหลัก**

- การดึงคำตอบตามคำถาม
- ความเข้าใจบริบท
- เวลาตอบสนองที่รวดเร็ว
- การรวมระบบที่ง่าย

4. **ความปลอดภัยและการปฏิบัติตามข้อกำหนด**
- เป็นไปตาม GDPR และ PDPA
- ไม่มีการเก็บรักษาข้อมูลหลังการประมวลผล

:::info[วิธีรับ API Key?]
กรุณาเยี่ยมชมหน้า [การจัดการ API Key](/control/api-keys) เพื่อดู API Key ที่มีอยู่ของคุณ หรือขอ API Key ใหม่
:::

## ตัวอย่าง

### คำขอตอบคำถาม

```bash
curl --location --request POST 'https://api.iapp.co.th/thai-qa' \
--header 'Content-Type: application/json' \
--header 'apikey: {Your API KEY}' \
--data-raw '{
"question": "แค็วม์เป็นแค่หมู่บ้านใช่หรือไม่",
"document": "จังหวัดแค็วม์โปแลนด์ wojewdztwochemskie คือหน่วยการปกครองท้องถิ่นของประเทศโปแลนด์ในช่วงปี ค.ศ.1975 - ค.ศ.1998 จังหวัดได้รับการรวมเข้ากับจังหวัดลูบลินมีเมืองหลักคือแค็วม์ใน ปี ค.ศ.1998 มีพื้นที่ประมาณ 3865 ตารางกิโลเมตรและมีประชากร 248800 คน"
}'

การตอบคำถาม

{
"answer": "ไม่ใช่"
}

คุณสมบัติและความสามารถ

คุณสมบัติหลัก

  • ดึงคำตอบที่ถูกต้องจากข้อความและคำถามความรู้ภาษาไทย
  • ใช้เทคนิคการประมวลผลภาษาธรรมชาติ (NLP) ขั้นสูงเพื่อทำความเข้าใจบริบทและให้คำตอบที่เกี่ยวข้อง
  • รองรับแหล่งความรู้ที่หลากหลาย รวมถึงตำราเรียน บทความ และเว็บไซต์

ฟิลด์ที่รองรับ

  • อินพุต: ข้อความความรู้ภาษาไทยและคำถามที่เกี่ยวข้อง
  • เอาต์พุต: คำตอบที่เกี่ยวข้องมากที่สุดที่ดึงมาจากข้อความความรู้ที่ให้มา
  • คะแนนความมั่นใจสำหรับคำตอบที่ดึงมา

ความสามารถเพิ่มเติม

  • การรวมระบบเข้ากับแอปพลิเคชันที่มีอยู่ได้อย่างง่ายดายผ่าน RESTful API
  • ออกแบบมาสำหรับการประมวลผลแบบเรียลไทม์และแบบแบตช์
  • เหมาะอย่างยิ่งสำหรับแพลตฟอร์มการศึกษา ระบบสนับสนุนลูกค้า และแอปพลิเคชันที่เน้นความรู้

API Endpoints

EndpointMethodคำอธิบายราคา
/v3/store/nlp/question/answer/v3
/thai-qa (รุ่นเก่า)
POSTดึงคำตอบจากข้อความภาษาไทยตามคำถาม1 IC ต่อ 400 ตัวอักษร

เอกสารอ้างอิง API

Endpoint

POST https://api.iapp.co.th/thai-qa

ชื่อประเภทคำอธิบาย
apikeyStringAPI Key ที่สร้างขึ้น

Request Body

ชื่อประเภทคำอธิบาย
questionStringคำถามที่คุณต้องการทราบ
documentStringข้อมูลย่อหน้า

ตัวอย่างโค้ด

Curl

curl -X POST https://api.iapp.co.th/v3/store/nlp/question/answer \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text": "Your text here"}'

Python

import requests
import json

url = "https://api.iapp.co.th/thai-qa/v3/inference"

payload = json.dumps({
"question": "{YOUR QUESTION}",
"document": "{YOUR PARAGRAPH/ YOUR ARTICLE}"
})
headers = {
'apikey': '{YOUR API KEY}',
'Content-Type': 'application/json'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)


JavaScript

const axios = require('axios');
let data = JSON.stringify({
"question": "{YOUR QUESTION}",
"document": "{YOUR PARAGRAPH/ YOUR ARTICLE}"
});

let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.iapp.co.th/thai-qa/v3/inference',
headers: {
'apikey': '{YOUR API KEY}',
'Content-Type': 'application/json'
},
data : data
};

axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.iapp.co.th/thai-qa/v3/inference',
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 =>'{
"question": "{YOUR QUESTION}",
"document": "{YOUR PARAGRAPH/ YOUR ARTICLE}"
}',
CURLOPT_HTTPHEADER => array(
'apikey: {YOUR API KEY}',
'Content-Type: application/json'
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Swift

let parameters = "{\n    \"question\": \"{YOUR QUESTION}\",  \n    \"document\": \"{YOUR PARAGRAPH/ YOUR ARTICLE}\"\n}"
let postData = parameters.data(using: .utf8)

var request = URLRequest(url: URL(string: "https://api.iapp.co.th/thai-qa/v3/inference")!,timeoutInterval: Double.infinity)
request.addValue("{YOUR API KEY}", forHTTPHeaderField: "apikey")
request.addValue("application/json", forHTTPHeaderField: "Content-Type")

request.httpMethod = "POST"
request.httpBody = postData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
}

task.resume()

Kotlin

val client = OkHttpClient()
val mediaType = "application/json".toMediaType()
val body = "{\n \"question\": \"{YOUR QUESTION}\", \n \"document\": \"{YOUR PARAGRAPH/ YOUR ARTICLE}\"\n}".toRequestBody(mediaType)
val request = Request.Builder()
.url("https://api.iapp.co.th/thai-qa/v3/inference")
.post(body)
.addHeader("apikey", "{YOUR API KEY}")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()

Java

OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"question\": \"{YOUR QUESTION}\", \n \"document\": \"{YOUR PARAGRAPH/ YOUR ARTICLE}\"\n}");
Request request = new Request.Builder()
.url("https://api.iapp.co.th/thai-qa/v3/inference")
.method("POST", body)
.addHeader("apikey", "{YOUR API KEY}")
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();

Dart

var headers = {
'apikey': '{YOUR API KEY}',
'Content-Type': 'application/json'
};
var request = http.Request('POST', Uri.parse('https://api.iapp.co.th/thai-qa/v3/inference'));
request.body = json.encode({
"question": "{YOUR QUESTION}",
"document": "{YOUR PARAGRAPH/ YOUR ARTICLE}"
});
request.headers.addAll(headers);

http.StreamedResponse response = await request.send();

if (response.statusCode == 200) {
print(await response.stream.bytesToString());
}
else {
print(response.reasonPhrase);
}

ราคา

ชื่อบริการ AI APIEndpointIC ต่ออักขระOn-Premise
ระบบตอบคำถามอัตโนมัติภาษาไทย (QA)iapp_thai_automatic_qa_v11 IC/400 อักขระติดต่อ