ใช้ OpenAI API และโมเดล GPT ด้วย key เดียว
เรียก OpenAI API ผ่าน RelaySwitch โดยเปลี่ยนสองค่าในโค้ด: Base URL เป็น https://api.relayswitch.io/v1 และ key เป็น key ที่ขึ้นต้นด้วย sk-relay- แล้ว OpenAI SDK ใช้ได้ตามเดิม มี GPT ให้เรียก 19 รุ่น ทั้งแบบ Chat Completions และ Responses คิดเงินตาม token จากยอดที่เติมไว้ล่วงหน้า
01OpenAI API, ChatGPT API และ GPT API คือสิ่งเดียวกัน
คำว่า OpenAI API, ChatGPT API และ GPT API ที่คนค้นหากันหมายถึง API ชุดเดียวกัน การใช้กับ OpenAI โดยตรงต้องเปิดบัญชีบนแพลตฟอร์มของ OpenAI จ่ายเงินที่นั่น แล้วใช้ key ของ OpenAI เมื่อเรียกผ่าน RelaySwitch ส่วนนี้เปลี่ยนไป: เติมเงินและรับ key ที่ RelaySwitch แล้วส่ง request มาที่ gateway ซึ่งส่งต่อไปยังโมเดล
สำหรับโค้ด มีเพียง Base URL และ key ที่ต่างไป ส่วน request body, model id, streaming และ tool call ยังเหมือนเดิม client หรือ framework ใดก็ตามที่ให้ตั้ง Base URL เองจึงใช้ได้ และ key ตัวเดียวกันยังเรียก Claude, Gemini และโมเดลอื่นในแคตตาล็อกได้ โดยเปลี่ยนเฉพาะค่า model
02Chat Completions หรือ Responses: ใช้ route ไหน
OpenAI API เรียกได้สองแบบ และที่นี่รับทั้งสองแบบด้วย key เดียวกัน ยอดเงินเดียวกัน ในราคาเท่ากัน โปรแกรมที่เขียนใหม่จะเลือกทางใดก็ได้ การเปิด streaming ทำเหมือนกันทั้งสองทาง คือตั้ง stream เป็น true แล้ว response จะมาเป็น server-sent events ในรูปแบบเดียวกับของ OpenAI
ตัวอย่างใต้ตารางคือ request แบบ Responses ขนาดเล็กที่สุด ตัวเลือก -i พิมพ์ header ออกมาด้วย ซึ่งมี request id ของการเรียกครั้งนั้น
Chat Completions (/chat/completions) | route ที่โค้ดเดิมและเครื่องมือของค่ายอื่นส่วนใหญ่ใช้ เหมาะกับโค้ดที่เขียนด้วย OpenAI SDK อยู่แล้ว |
Responses (/responses) | route ที่ใหม่กว่าของ OpenAI และเป็น route เดียวที่ Codex CLI ใช้ การตั้งค่าอยู่ที่หน้า Codex |
curl -i https://api.relayswitch.io/v1/responses \ -H "Authorization: Bearer sk-relay-..." \ -H "content-type: application/json" \ -d '{"model": "gpt-6.1-sol", "input": "Reply with ok"}'03เรียก OpenAI API ครั้งแรกด้วย curl
เริ่มจาก curl เพื่อยืนยันว่า key และที่อยู่ถูกต้อง ก่อนย้ายไปใส่ใน SDK Base URL ต้องมี /v1 ถ้าใส่เฉพาะโดเมนโดยไม่มี /v1 จะได้ 404
key ส่งใน header Authorization: Bearer ถ้าได้ 200 พร้อม JSON แสดงว่าทั้งสองค่าถูกต้อง และ request นี้จะปรากฏในหน้า Usage ของคอนโซลพร้อมจำนวน token และค่าใช้จ่าย
curl https://api.relayswitch.io/v1/chat/completions \ -H "Authorization: Bearer sk-relay-..." \ -H "content-type: application/json" \ -d '{"model": "gpt-6.1-sol", "messages": [{"role": "user", "content": "Reply with ok"}]}'04OpenAI SDK สำหรับ Python: เปลี่ยนแค่ base_url
ส่ง base_url และ api_key ตอนสร้าง client ส่วนที่เหลือของโค้ดไม่ต้องแก้ SDK ต่อ /chat/completions หรือ /responses ท้าย Base URL เอง ค่า usage ใน response ระบุจำนวน token ซึ่งตรงกับใบเสร็จของ request นั้น SDK สำหรับ Node ใช้หลักเดียวกัน โดยส่ง baseURL และ apiKey
ถ้าไม่ต้องการแก้โค้ด ให้ตั้งตัวแปรสภาพแวดล้อมสองตัว คือ OPENAI_BASE_URL และ OPENAI_API_KEY เพราะ SDK ทางการของ OpenAI อ่านค่าจากสองตัวนี้เมื่อไม่ได้ส่งค่ามาในโค้ดโดยตรง ส่วนการตั้งค่าใน editor ดูที่หน้า Cursor
from openai import OpenAI client = OpenAI(base_url="https://api.relayswitch.io/v1", api_key="sk-relay-...")reply = client.chat.completions.create( model="gpt-6.1-sol", messages=[{"role": "user", "content": "Reply with ok"}],)print(reply.choices[0].message.content)05ราคา GPT ทุกรุ่นต่อหนึ่งล้าน token
ตารางนี้อ่านจากแคตตาล็อกตอนสร้างหน้า และเป็นราคาที่ถูกหักจากยอดเงินจริง แต่ละรุ่นมีราคา input และ output แยกกัน รุ่นที่รองรับ cache มีราคา cached input อีกหนึ่งค่า ซึ่งดูได้ในหน้าของโมเดล พร้อมราคาทางการที่ OpenAI ประกาศไว้เมื่อมีข้อมูล วิธีคิดเงินโดยละเอียดอยู่ที่หน้าราคา
| โมเดล | ผู้พัฒนา | Input | Output | Context |
|---|---|---|---|---|
| GPT-6.1 Solgpt-6.1-sol | OpenAI | $0.582≈ ฿20.13 | $2.91≈ ฿100.67 | 1,050,000 |
| GPT-6 Lunagpt-6-luna | OpenAI | $0.0625≈ ฿2.16 | $0.20≈ ฿6.92 | 1,050,000 |
| GPT-6 Solgpt-6-sol | OpenAI | $0.60≈ ฿20.76 | $3.00≈ ฿103.78 | 1,050,000 |
| GPT-6 Astragpt-6-astra | OpenAI | $3.00≈ ฿103.78 | $15.00≈ ฿518.90 | 1,050,000 |
| GPT-5.6 Lunagpt-5.6-luna | OpenAI | $0.12≈ ฿4.15 | $0.72≈ ฿24.91 | 1,050,000 |
| GPT-5.6 Solgpt-5.6-sol | OpenAI | $1.20≈ ฿41.51 | $3.00≈ ฿103.78 | 1,050,000 |
| GPT-5.6 Terragpt-5.6-terra | OpenAI | $1.20≈ ฿41.51 | $3.60≈ ฿124.54 | 1,050,000 |
| GPT-5.5gpt-5.5 | OpenAI | $1.80≈ ฿62.27 | $9.00≈ ฿311.34 | 1,050,000 |
| GPT-5.4 Minigpt-5.4-mini | OpenAI | $0.75≈ ฿25.94 | $4.50≈ ฿155.67 | 400,000 |
| GPT-5.4gpt-5.4 | OpenAI | $1.50≈ ฿51.89 | $9.00≈ ฿311.34 | 1,050,000 |
| GPT-5.3-Codexgpt-5.3-codex | OpenAI | $1.75≈ ฿60.54 | $14.00≈ ฿484.31 | 400,000 |
| GPT-4o minigpt-4o-mini | OpenAI | $0.15≈ ฿5.19 | $0.60≈ ฿20.76 | 128,000 |
| GPT-4ogpt-4o | OpenAI | $2.50≈ ฿86.48 | $10.00≈ ฿345.93 | 128,000 |
| GPT-4.1 Nanogpt-4.1-nano | OpenAI | $0.10≈ ฿3.46 | $0.40≈ ฿13.84 | 1,048,576 |
| GPT 5.4 Nanogpt-5.4-nano | OpenAI | $0.40≈ ฿13.84 | $2.50≈ ฿86.48 | 400,000 |
| GPT 5.6gpt-5.6 | OpenAI | $0.9412≈ ฿32.56 | $4.7059≈ ฿162.79 | 1,050,000 |
| GPT 6.1 Terragpt-6.1-terra | OpenAI | $0.2941≈ ฿10.17 | $1.4706≈ ฿50.87 | 1,000,000 |
| gpt-oss-120bgpt-oss-120b | OpenAI | $0.20≈ ฿6.92 | $1.80≈ ฿62.27 | |
| gpt-oss-20bgpt-oss-20b | OpenAI | $0.16≈ ฿5.54 | $0.72≈ ฿24.91 |
USD ต่อหนึ่งล้าน token · ≈ คือราคาอ้างอิงเป็นเงินบาทตามอัตราของธนาคารกลางยุโรป ณ วันที่ 2026-11-13 การคิดค่าบริการเป็นดอลลาร์สหรัฐ
06รับ API key และเติมเงินในสามขั้นตอน
ยอดเงินเป็น USD หักตาม token ที่ใช้จริง ไม่ต้องสมัคร subscription และยอดที่เติมไว้ไม่มีวันหมดอายุ การเติมเงินขอคืนเงินไม่ได้ ครั้งแรกจึงควรเติมระดับต่ำสุด ทดสอบด้วย curl ให้ผ่านก่อน แล้วค่อยเติมเพิ่ม รายละเอียดของเหรียญ เครือข่าย และเวลาที่ยอดเข้าอยู่ที่หน้าเติมเงิน
- เปิดบัญชี: กรอกอีเมลในคอนโซล (app.relayswitch.io) แล้วเข้าสู่ระบบด้วยรหัสที่ส่งไปทางอีเมล หรือเข้าด้วยบัญชี Google หรือ GitHub ไม่ต้องใช้เบอร์โทรศัพท์ ไม่ต้องใช้เอกสารยืนยันตัวตน และไม่ต้องมีบัญชี OpenAI
- เติมเงิน: เลือกบัตร (รวม Apple Pay และ Google Pay) หรือคริปโต (USDT, USDC, BTC, ETH, SOL) แล้วเลือกจำนวน ระดับการเติมคือ $10, $25, $50, $100, $250, $500 ถ้าจ่ายด้วยคริปโต หน้า checkout จะแสดงเครือข่ายที่รับ address และจำนวนที่ต้องโอนพอดี ยอดเข้าเมื่อเครือข่ายยืนยันธุรกรรม โดยปกติภายในไม่กี่นาที
- สร้าง key: ตั้งชื่อในหน้า Keys แล้วกดสร้าง key ฉบับเต็มแสดงเพียงครั้งเดียว หลังจากนั้นคอนโซลแสดงเฉพาะส่วนต้น จึงควรเก็บลง password manager ทันที
07รหัส error กับ exception ของ OpenAI SDK
เนื้อหาของ error ใช้โครงสร้างแบบ OpenAI ชื่อ exception ในวงเล็บมาจาก README ของ openai-python รหัส 401 ถึง 404 ตอบกลับก่อนที่ request จะไปถึงโมเดล ส่วน 429, 502 และ 503 ไม่มีเนื้อหาจากโมเดลตอบกลับ ทั้งหมดนี้จึงไม่คิดเงิน
ตาม README ฉบับเดียวกัน ค่าเริ่มต้นของ SDK จะลองใหม่เองสองครั้งเมื่อเจอ 408, 409, 429 และ 5xx โดยเว้นช่วงนานขึ้นทุกครั้ง 429 และ 502 ที่เกิดเป็นครั้งคราวจึงมักผ่านไปก่อนที่โค้ดจะเห็น ส่วน error 4xx อื่นไม่ถูกลองใหม่ ต้องแก้ request หรือ key ก่อน
400 invalid_request (BadRequestError) | request body ไม่ใช่ JSON object ไม่ได้ระบุ model หรือหนึ่ง request มี key สองค่าที่ไม่ตรงกัน |
401 invalid_api_key (AuthenticationError) | ไม่ได้ส่ง key มา key ไม่ถูกต้อง หรือถูกเพิกถอนแล้ว ให้ตรวจ header Authorization และค่าในตัวแปร OPENAI_API_KEY |
402 insufficient_balance | ยอดเงินไม่พอ เติมแล้วใช้ได้ทันที ถ้าบัญชียังมีเงินแต่งบของ key หมด รหัสจะเป็น key_budget_exhausted ตาราง exception ของ SDK ไม่มี class เฉพาะสำหรับ 402 |
403 scope_denied หรือ ip_not_allowed (PermissionDeniedError) | key ใช้ได้ แต่ allow-list ของโมเดลหรือของ IP ไม่อนุญาต request นี้ แก้ข้อจำกัดของ key ได้ในคอนโซล |
404 model_not_found (NotFoundError) | model id ไม่อยู่ในแคตตาล็อก มักเกิดจากสะกดผิดหรือใช้ชื่อแสดงผลแทน id และ Base URL ที่ขาด /v1 ก็ได้ 404 เช่นกัน |
429 rate_limited (RateLimitError) | key ถึงขีดจำกัด request ต่อนาที token ต่อนาที หรือจำนวน request ที่ทำพร้อมกัน header retry-after บอกจำนวนวินาทีที่ต้องรอ |
502 upstream_error และ 503 upstream_unavailable (InternalServerError) | route มีปัญหา หรือยังไม่มี route ใดของโมเดลนี้ตอบในขณะนั้น ให้ลองใหม่ภายหลังหรือเปลี่ยนโมเดล |
คำถามที่พบบ่อย
- OpenAI API key หาได้จากที่ไหน
- key ที่เรียกกันว่า OpenAI API key หรือ ChatGPT API key มีสองแบบ แบบแรกคือ key ทางการของ OpenAI ซึ่งสร้างและเติมเงินบนแพลตฟอร์มของ OpenAI แบบที่สองคือ key ของ gateway ซึ่งเติมเงินกับผู้ให้บริการ gateway ที่นี่เป็นแบบที่สอง: เปิดบัญชีด้วยอีเมล เติมเงินขั้นต่ำ $10 ด้วยบัตรหรือคริปโต แล้วสร้าง key ที่ขึ้นต้นด้วย sk-relay- ในคอนโซล ตอนเรียกยังใช้ model id ของ GPT ตามเดิม
- เติมเงินสำหรับ OpenAI API ด้วยอะไรได้บ้าง
- บัตร (รวม Apple Pay และ Google Pay) หรือคริปโต (USDT, USDC, BTC, ETH, SOL) ระดับการเติมคือ $10, $25, $50, $100, $250, $500 ยอดเงินเป็น USD ไม่มีวันหมดอายุ และไม่ต้องสมัคร subscription การเติมเงินขอคืนเงินไม่ได้ ครั้งแรกจึงควรเติมระดับต่ำสุด
- Base URL ของ OpenAI API ต้องมี /v1 ไหม
- ต้องมี ให้ใส่ https://api.relayswitch.io/v1 แล้ว SDK จะต่อ /chat/completions หรือ /responses ให้เอง ถ้าใส่โดเมนโดยไม่มี /v1 จะได้ 404
- ควรใช้ Chat Completions หรือ Responses
- รองรับทั้งสองแบบ ด้วย key เดียวกันและราคาเท่ากัน โค้ดเดิมและเครื่องมือส่วนใหญ่ใช้ Chat Completions ส่วน Codex CLI ใช้ Responses เท่านั้น โปรแกรมที่เขียนใหม่ใช้แบบใดก็ได้ และเปิด streaming ด้วยการตั้ง stream เป็น true เหมือนกัน
- ยืนยันได้อย่างไรว่าที่ตอบคือ GPT จริง
- ทุกโมเดลได้รับ prompt ทดสอบชุดเดียวกันทุกวัน คำตอบถูกเทียบกับรอบก่อนหน้า และผลเปิดเผยที่ https://api.relayswitch.io/v1/proof ทุก request ยังมีใบเสร็จลงลายเซ็นที่ GET https://api.relayswitch.io/v1/requests/:id/receipt ซึ่งระบุโมเดล token ที่คิดเงิน และค่าใช้จ่าย ราคาในตารางคือราคาที่ถูกหักจริง
- ได้ 429 จาก OpenAI API ต้องทำอย่างไร
- key เกินขีดจำกัด request ต่อนาทีหรือ token ต่อนาทีของตัวเอง header retry-after บอกจำนวนวินาทีที่ต้องรอ หรือปรับขีดจำกัดของ key ให้สูงขึ้นในคอนโซล ขีดจำกัดตั้งเป็นราย key จึงไม่กระทบ key อื่นในบัญชี
OpenAI SDK เดิม กับ Base URL ใหม่
Base URL คือ https://api.relayswitch.io/v1 GPT ทุกรุ่นคิดตามราคาสดในแคตตาล็อก และมีการตรวจโมเดลแบบเปิดเผยทุกวัน