TH ▾
mimoapi.topAPI ที่เข้ากันได้กับ OpenAI แบบไม่เซ็นเซอร์สำหรับนักพัฒนา
uncensoredhttps://api.mimoapi.top/v1

URL ฐานของ Mimo API และวิธีตั้งค่าไคลเอนต์าไคลเอนต์

URL ฐานคือ https://api.mimoapi.top/v1, โมเดล ID คือ uncensored และคีย์จะอยู่ใน Bearer header ด้านล่างคือตำแหน่งที่ค่าแต่ละค่าจะอยู่ในเครื่องมือทั่วไป และสิ่งที่ต้องตรวจสอบเมื่อคำขอล้มเหลว

อัปเดต

เส้นทางสว่างของกระเบื้องที่เชื่อมต่อแล็ปท็อปกับเซิร์ฟเวอร์ แสดง URL ฐานที่เชื่อมโยงไคลเอนต์กับ LLM API

ค่าที่ต้องคัดลอก

ทุกคนที่ค้นหา mimo api base url ต้องการสามค่า และที่เหลือเป็นรายละเอียดของเครื่องมือที่คุณกำลังตั้งค่า

การตั้งค่าค่า
URL พื้นฐานhttps://api.mimoapi.top/v1
ID โมเดลuncensored
Auth headerAuthorization: Bearer YOUR_KEY
เอนด์พอยต์แชทPOST /v1/chat/completions
รายการโมเดลGET /v1/models

บริการนี้เข้ากันได้กับ OpenAI ดังนั้นไคลเอนต์ใดๆ ที่ให้คุณเปลี่ยน URL ฐานและคีย์ของ OpenAI ได้จะทำงานได้ เป็น API ข้อความแบบโฮสต์ที่รันโมเดลแบบเปิดน้ำหนักหนึ่งตัวจากผู้ให้บริการอิสระ ไม่ใช่ API ทางการของผู้ขายโมเดลใดเลย รองรับเฉพาะข้อความ: ไม่มีการสร้างภาพ เสียง หรือวิดีโอ ไม่มี embeddings และไม่มี fine-tuning ดังนั้นไคลเอนต์ที่คาดหวังเอนด์พอยต์เหล่านั้นจะหาไม่พบ หากคุณยังไม่มีคีย์ หน้าคีย์ใช้เวลาเพียงหนึ่งนาที

Base URL เทียบกับเอนด์พอยต์แบบเต็ม

ความสับสนที่พบบ่อยที่สุดคือระหว่าง Base URL กับ URL ของเอนด์พอยต์ Base URL จะหยุดที่/v1 เอนด์พอยต์คือ Base URL บวกกับพาธ SDK ทางการของ OpenAI และเครื่องมือส่วนใหญ่ที่สร้างจาก SDK เหล่านี้จะรวมทั้งสองอย่างให้คุณ

  • Base URL: https://api.mimoapi.top/v1
  • Chat endpoint: https://api.mimoapi.top/v1/chat/completions
  • Models endpoint: https://api.mimoapi.top/v1/models

เมื่อหน้าจอการตั้งค่าถามหา "base URL", "API base", "endpoint" หรือ "host" ให้ดู placeholder ของมัน หาก placeholder ลงท้ายด้วย/v1 ให้วาง Base URL หากลงท้ายด้วย/chat/completions ให้วาง chat endpoint แบบเต็ม การวาง chat endpoint แบบเต็มลงในฟิลด์ที่คาดหวัง Base URL จะทำให้เกิด/chat/completions/chat/completions ซึ่งไม่มีอยู่จริง การวางเพียงโดเมนเปล่าลงในฟิลด์ที่คาดหวัง Base URL จะทำให้เกิด/chat/completions โดยไม่มี/v1 ซึ่งล้มเหลวในลักษณะเดียวกัน

โปรดสังเกตโฮสต์ด้วย API อยู่บน subdomainapi โดเมนเว็บไซต์ธรรมดาให้บริการหน้าเว็บ ดังนั้นคำขอไปยังโดเมนนั้นพร้อมพาธ API จะไม่เข้าถึงโมเดล

Python และ Node

เมื่อใช้ SDK ทางการ คุณตั้งค่า Base URL เพียงครั้งเดียวเมื่อสร้างไคลเอนต์ ติดตั้งด้วยpip install openai หรือnpm install openai

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": "Name three uses for a base URL."}],
    max_tokens=150,
)
print(resp.choices[0].message.content)
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.mimoapi.top/v1",
  apiKey: process.env.LLM_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Name three uses for a base URL." }],
  max_tokens: 150,
});
console.log(resp.choices[0].message.content);

SDK OpenAI สำหรับ Python และ Node.js ยังอ่านตัวแปรสภาพแวดล้อมOPENAI_BASE_URL และOPENAI_API_KEY เมื่อคุณไม่ได้ส่งค่าในโค้ด สิ่งนี้ทำให้สามารถเปลี่ยนปลายทางของสคริปต์ที่มีอยู่โดยไม่ต้องแก้ไขได้: ส่งออกตัวแปรทั้งสอง และสคริปต์จะพูดกับ API นี้ ตรวจสอบว่าสคริปต์ไม่ได้ hard-code โมเดลเช่นชื่อ GPT; ให้แทนที่ด้วยuncensored

curl สำหรับการทดสอบอย่างรวดเร็ว

การเรียก HTTP แบบธรรมดาจะกำจัดตัวแปรอื่นๆ ทั้งหมด ดังนั้นจึงเป็นการตรวจสอบเบื้องต้นที่ดีที่สุด คำสั่งแรกจะแสดงรายการโมเดลและยืนยันคีย์ คำสั่งที่สองจะส่งคำขอ chat

export LLM_API_KEY="YOUR_KEY"

curl -s https://api.mimoapi.top/v1/models \
  -H "Authorization: Bearer $LLM_API_KEY"

curl -s https://api.mimoapi.top/v1/chat/completions \
  -H "Authorization: Bearer $LLM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","messages":[{"role":"user","content":"ping"}],"max_tokens":20}' -i

แฟลก -i พิมพ์ส่วนหัวของคำตอบ ดู X-Request-Id (บันทึกไว้หากติดต่อฝ่ายสนับสนุน), X-Balance-USD (เครดิตคงเหลือของคุณ) และส่วนหัวขีดจำกัดอัตราสองตัว, X-RateLimit-Limit-Requests และ X-RateLimit-Limit-Concurrency สำหรับการสตรีมมิง ให้เพิ่ม "stream": true ในบอดี้และ -N ใน curl เพื่อให้เอาต์พุตไม่ถูกบัฟเฟอร์ คู่มือเริ่มต้น 5 นาที จะแนะนำการสตรีมมิงและการเรียกใช้ฟังก์ชันหลังจากนี้

LangChain, chat frontends และเครื่องมืออื่นๆ

เครื่องมือของบุคคลที่สามใช้ป้ายกำกับของตัวเอง แต่ทั้งหมดต้องการค่าสามค่าเดียวกัน รูปแบบบางอย่างที่คุณจะเห็น:

  • LangChain (Python): ChatOpenAI(model="uncensored", base_url="https://api.mimoapi.top/v1", api_key="YOUR_KEY") คลาสเดียวกันใช้งานได้กับเซิร์ฟเวอร์ที่เข้ากันได้กับ OpenAI ใดๆ
  • SillyTavern และส่วนหน้าแชทสวมบทบาทที่คล้ายกัน: เลือกแหล่งแชท ที่เข้ากันได้กับ OpenAI แบบกำหนดเองหรือทั่วไป วาง Base URL เพิ่มคีย์ และพิมพ์uncensored เป็นชื่อโมเดลหากรายการไม่เติมตัวเอง
  • Open WebUI และ UI แชทแบบโฮสต์เองอื่นๆ: เพิ่มการเชื่อมต่อที่เข้ากันได้กับ OpenAI ในการตั้งค่า โดยใช้ Base URL และคีย์เดียวกัน
  • ปลั๊กอินตัวแก้ไขและสคริปต์: มองหา "custom OpenAI endpoint" หรือ "override base URL" ในการตั้งค่าปลั๊กอิน

ชื่อเมนูของเครื่องมือแต่ละตัวเปลี่ยนไปตามเวอร์ชัน ดังนั้นให้พึ่งพาจุดประสงค์ของฟิลด์มากกว่าป้ายกำกับที่แน่นอน หากเครื่องมือยืนยันที่จะตรวจสอบคีย์กับผู้ให้บริการที่กำหนด มันไม่เข้ากันได้กับ custom endpoints และเครื่องมืออื่นคือวิธีแก้ไข

เมื่อเครื่องมือเสนอ dropdown โมเดล มันมักจะเติมรายการนั้นโดยการเรียกGET /v1/models หาก dropdown ว่างเปล่า ให้พิมพ์ ID ของโมเดลด้วยตนเอง หากเครื่องมือปฏิเสธชื่อโมเดลที่ไม่รู้จัก ให้มองหาตัวเลือกที่เรียกว่า "custom model"

การแก้ไขข้อผิดพลาดในการกำหนดค่าที่พบบ่อย

เมื่อคำขอล้มเหลว รหัสสถานะและ URL ที่แน่นอนจะระบุสาเหตุได้รวดเร็ว ทำงานตามรายการนี้

  1. ข้อผิดพลาดการตรวจสอบสิทธิ์ คีย์หายไป ตัดทอน หรือมีช่องว่างหรือ newline ต่อท้าย วางคีย์อีกครั้ง และตรวจสอบให้แน่ใจว่า header อ่านว่าBearer ช่องว่าง แล้วตามด้วยคีย์
  2. ไม่พบเส้นทาง เส้นทางผิด ให้พิมพ์ URL สุดท้ายที่ไคลเอนต์ของคุณสร้าง ควรเป็น https://api.mimoapi.top/v1/chat/completions ตรวจดูว่าขาด /v1, มีเส้นทางซ้ำ หรือโฮสต์ผิด
  3. โมเดลไม่รู้จัก ชื่อโมเดลตกค้างจากผู้ให้บริการรายอื่น ตั้งค่าโมเดลเป็น uncensored
  4. HTTP 429 พร้อม rate_limited หรือ concurrency. คุณเกิน 300 คำขอต่อนาทีหรือ 8 คำขอพร้อมกัน (60 และ 2 สำหรับคีย์ทดลอง) ลดความเร็วหรือจัดคิวคำขอ 429 พร้อมส่วนหัว Retry-After: 5 หมายถึงการโอเวอร์โหลดชั่วคราว; รอห้าวินาทีแล้วลองใหม่
  5. Request ใหญ่เกินไป ขีดจำกัดของ body คือ 8 MB และหน้าต่างบริบทคือ 100,000 โทเคนสำหรับพรอมต์รวมกับการสร้างข้อความ ให้ตัดประวัติออก
  6. ทำงานใน curl แต่ล้มเหลวในเบราว์เซอร์ การเรียก API โดยตรงจาก JavaScript หน้าบ้านจะเปิดเผยคีย์ของคุณให้ทุกคนที่เข้าชม เรียกผ่านเซิร์ฟเวอร์ของคุณเอง

อย่าใส่คีย์ใน repository สาธารณะหรือบันเดิลฝั่งไคลเอนต์ เก็บไว้ในตัวแปรสภาพแวดล้อม และเก็บให้พ้นจากภาพหน้าจอและตั๋วสนับสนุน

ขั้นตอนถัดไปหลังการเรียกครั้งแรกสำเร็จ

เมื่อ URL ฐานทำงานได้แล้ว มีการตั้งค่าอยู่ไม่กี่อย่างที่ควรทราบ การสตรีมมิงผ่าน SSE เปิดใช้งานด้วย stream: true การเรียกใช้ฟังก์ชันใช้ tools และ tool_choice โดยส่งผลลัพธ์กลับเป็นข้อความ role: "tool" โหมด JSON คือ response_format: {"type": "json_object"} การควบคุมการสุ่มตัวอย่างเช่น temperature, top_p, stop, seed และค่าปรับจะถูกส่งผ่าน

ในด้านการเงิน คุณจ่าย $0.15 ต่อ 1M โทเคนอินพุตและ $0.50 ต่อ 1M โทเคนเอาต์พุตจากเครดิตแบบเติมเงินล่วงหน้า; หน้าราคา ระบุขนาดการเติมเงินและโบนัส โมเดลได้รับการปรับแต่งเพื่อตอบโดยไม่มีการปฏิเสธเนื้อหาสำหรับการใช้งานผู้ใหญ่ที่ถูกต้องตามกฎหมาย และเนื้อหาทางเพศที่เกี่ยวข้องกับผู้เยาว์ไม่ได้รับอนุญาตโดยเด็ดขาด พรอมต์ไม่ถูกใช้สำหรับการฝึก

ถาม-ตอบ

Base URL ของ Mimo API คืออะไร?

สำหรับบริการนี้คือ https://api.mimoapi.top/v1 ใช้เป็น Base URL ในไคลเอนต์ที่เข้ากันได้กับ OpenAI พร้อมระบุโมเดล ID uncensored และคีย์ของคุณเป็นโทเคน Bearer

ควรรวม /chat/completions ใน Base URL หรือไม่?

ไม่ ไคลเอนต์เพิ่มเส้นทางนั้นเอง รวมเฉพาะเมื่อฟิลด์ถามหาเอนด์พอยต์แชทเต็ม ซึ่งค่าคือ https://api.mimoapi.top/v1/chat/completions

ทำไมถึงได้ข้อผิดพลาดไม่พบ?

URL สุดท้ายมักผิด: ขาด /v1, เส้นทางซ้ำ หรือโดเมนเว็บไซต์ธรรมดาแทนโดเมน api พิมพ์ URL ที่ไคลเอนต์ของคุณส่งและเปรียบเทียบกับเอนด์พอยต์ด้านบน

สามารถใช้ตัวแปรสภาพแวดล้อมแทนการแก้ไขโค้ดได้หรือไม่?

ได้ SDK OpenAI สำหรับ Python และ Node.js อ่าน OPENAI_BASE_URL และ OPENAI_API_KEY ดังนั้นคุณสามารถเปลี่ยนเส้นทางสคริปต์ได้โดยการส่งออกตัวแปรเหล่านี้และเปลี่ยนชื่อโมเดลเป็น uncensored

คีย์ของคุณอยู่ห่างแค่แบบฟอร์มเดียว

สร้างบัญชี คัดลอกคีย์ และเปลี่ยน base URL นั่นคือการตั้งค่าทั้งหมด

รับคีย์ API