Base URL และการตรวจสอบสิทธิ์
เริ่มต้นโดยชี้ไคลเอนต์ที่เข้ากันได้กับ OpenAI ไปยัง Base URL ของ API Mimo คุณจะได้รับคีย์ API ทันทีหลังจากสมัครสมาชิกด้วย Google หรืออีเมล ส่งคีย์นี้ในหัว Authorization มาตรฐาน ตัวระบุโมเดลคือ uncensored ซึ่งรันโมเดลแบบเปิดน้ำหนักที่ปรับแต่งเพื่อลดการปฏิเสธเนื้อหาผู้ใหญ่ที่ถูกต้องตามกฎหมาย
ต่างจากบริการแบบสมัครสมาชิก การเรียกเก็บเงินเป็นแบบเติมเงินล่วงหน้าผ่านคริปโต ข้อผิดพลาดไม่ใช้เครดิต คุณสามารถตรวจสอบการเชื่อมต่อได้โดยแสดงรายการโมเดลหรือส่งพรอมต์ข้อความแบบง่าย เก็บคีย์ของคุณให้ปลอดภัย คีย์หนึ่งต่อบัญชีจะแทนที่คีย์ก่อนหน้าหากคุณสร้างคีย์ใหม่
เอนด์พอยต์ Chat Completions มาตรฐาน
ส่งคำขอ POST มาตรฐานไปยังเอนด์พอยต์ chat completions ตั้งค่าโมเดลเป็น uncensored และให้ข้อความของคุณในรูปแบบอาร์เรย์ที่จำเป็น API จะส่งคืนผลลัพธ์ข้อความตามพรอมต์ของคุณ คุณสามารถปรับพารามิเตอร์เช่น temperature หรือ top_p เพื่อควบคุมความคิดสร้างสรรค์
curl https://api.mimoapi.top/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'เอนด์พอยต์นี้จัดการการโต้ตอบแบบข้อความเข้า-ข้อความออก ไม่รองรับ embeddings รูปภาพ หรือ fine-tuning หากคุณต้องการฟีเจอร์เหล่านั้น คุณต้องใช้บริการอื่น หน้าต่างบริทอนุญาตให้ใช้โทเคนได้รวม 100,000 โทเคนสำหรับพรอมต์และการตอบกลับรวมกัน
การผสานรวม Python SDK
ใช้ไลบรารี Python OpenAI ทางการเพื่อโต้ตอบกับ API เปลี่ยน Base URL ให้ชี้ไปยังเอนด์พอยต์ของ Mimo API สิ่งนี้ช่วยให้คุณใช้วิธีการ SDK เดียวกันที่คุณใช้สำหรับ GPT-4 หรือโมเดลอื่น ๆ ตั้งค่าคีย์ API และโมเดลเป้าหมายในการกำหนดค่าไคลเอนต์ของคุณ
from openai import OpenAI
client = OpenAI(base_url="https://api.mimoapi.top/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)แนวทางนี้ทำให้โค้ดของคุณสามารถพกพาได้ หากเปลี่ยนผู้ให้บริการ คุณเพียงแค่เปลี่ยน Base URL และคีย์ SDK ของ Python จัดการการแปลงข้อมูลและการลองใหม่โดยอัตโนมัติ คุณยังสามารถตั้งค่าพารามิเตอร์เช่น seed เพื่อผลลัพธ์ที่กำหนดได้
การผสานรวม Node SDK
ติดตั้งแพ็คเกจ OpenAI Node.js และกำหนดค่า Base URL ส่งคีย์ API ของคุณในวัตถุการกำหนดค่า ไคลเอนต์จะกำหนดเส้นทางคำขอไปยังเอนด์พอยต์โมเดลที่ไม่เซ็นเซอร์ สิ่งนี้ใช้งานได้กับการนำเข้าทั้ง CommonJS และ ES module
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.mimoapi.top/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);นักพัฒนา Node สามารถใช้รูปแบบ asynchronous เดียวกับที่ใช้กับบริการที่เข้ากันได้กับ OpenAI อื่นๆ SDK จัดการการแยกวิเคราะห์สตรีมและการเข้ารหัส JSON คุณสามารถตั้งค่า max_tokens เพื่อควบคุมความยาวของเอาต์พุต โดยค่าเริ่มต้นคือ 2,048 หากไม่ได้ระบุ
การตอบสนองแบบสตรีมมิง (SSE)
เปิดใช้งานสตรีมมิงโดยตั้งค่า stream: true ในคำขอของคุณ API จะส่งคืน Server-Sent Events (SSE) ที่มีโทเคนบางส่วน สิ่งนี้ช่วยให้คุณแสดงผลลัพธ์แบบก้าวหน้าให้กับผู้ใช้ สถิติการใช้โทเคนจะปรากฏในชิ้นส่วนสุดท้ายของสตรีม
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)สตรีมมิงลดความล่าช้าที่รับรู้สำหรับการตอบสนองที่ยาวนาน คุณต้องจัดการเหตุการณ์สตรีมในโค้ดไคลเอนต์ของคุณ API ไม่รับประกันจำนวนโทเคนที่แน่นอนระหว่างสตรีมมิง แต่ชิ้นส่วนสุดท้ายรวมถึงข้อมูลการใช้งานที่ถูกต้อง สิ่งนี้มีประโยชน์สำหรับการโปร่งใสในการเรียกเก็บเงิน
ขีดจำกัดอัตรา ข้อผิดพลาด และโหมด JSON
API กำหนดขีดจำกัดอัตรา 300 คำขอต่อนาทีต่อคีย์และอนุญาตคำขอพร้อมกัน 8 คำขอ หากคุณเกินขีดจำกัดนี้ คุณจะรับข้อผิดพลาด 429 ข้อผิดพลาด 401 บ่งชี้ว่าคีย์ไม่ถูกต้องหรือหมดอายุ เครดิตแบบเติมเงินล่วงหน้าจะถูกหักเฉพาะสำหรับการใช้งานโทเคนจริงเท่านั้น ข้อผิดพลาดและการปฏิเสธนั้นฟรี
สำหรับผลลัพธ์ที่มีโครงสร้าง ให้ใช้โหมด JSON โดยตั้งค่า response_format เป็น json_object สิ่งนี้บังคับให้โมเดลส่งคืน JSON ที่ถูกต้อง สิ่งนี้มีประโยชน์สำหรับการเรียกใช้ฟังก์ชันหรือการแยกข้อมูล หน้าต่างบริบทรองรับผลลัพธ์สูงสุด 32,000 โทเคนต่อคำขอ