الانتقال إلى المحتوى الرئيسي
يمكن لوكيل ذكاء اصطناعي يتحكم بمحفظة على Base أن يصدر مفتاح Venice API الخاص به دون أي تدخل بشري. يحصل الوكيل على VVV، ويكدّسها (stakes)، ويوقّع token قصير الأمد صادرًا من Venice، ويُرسل الـ token الموقّع للحصول على مفتاح API جديد مرتبط بمحفظة الـ staking. يستعرض هذا الدليل التدفق الكامل من البداية إلى النهاية ويغطي خيارات التمويل لدفع الاستدلال فعليًا بعد إصدار المفتاح.

المتطلبات

  • محفظة EVM على Base يتحكم بها الوكيل (مفتاح خاص في متغير بيئة أو مدير أسرار).
  • كمية صغيرة من ETH على Base للـ gas (الـ staking يتطلب معاملتين: approve ثم stake).
  • أي كمية غير صفرية من VVV للـ stake. تتطلب endpoint الإصدار فقط أن يكون لدى المحفظة رصيد sVVV غير صفري، لذا VVV واحد يكفي لإصدار مفتاح. راجع الدفع للاستدلال لمعرفة ما تحتاجه لاستدعاء endpoints مدفوعة فعليًا.
استخدم محفظة وكيل مخصصة بدلًا من محفظة الخزينة. يوقّع المفتاح الخاص للمحفظة كل طلب token من Venice، لذا يجب أن يكون نطاق تأثيرها صغيرًا.

الخطوات

1

احصل على VVV

أرسل VVV إلى محفظة الوكيل، أو اجعل الوكيل يقوم بمبادلة على DEX مثل Aerodrome أو Uniswap.عقد token VVV على Base: 0xacfE6019Ed1A7Dc6f7B508C02d1b04ec88cC21bf
2

قم بـ stake لـ VVV مع Venice

قم بـ stake لـ VVV في Venice Staking Smart Contract عند 0x321b7ff75154472B18EDb199033fF4D116F340Ff. هذه معاملتان:
  1. approve(spender, amount) على token VVV، حيث spender هو عقد الـ staking.
  2. stake(amount) على عقد الـ staking.
Smart Contract Staking
عندما تؤكَّد المعاملة الثانية، ينخفض رصيد VVV للمحفظة ويزداد رصيد sVVV الخاص بها بنفس المقدار. تقرأ endpoint الإصدار رصيد sVVV لتأكيد أن المحفظة قد قامت بـ stake.
3

اطلب token تحقق

استدعِ GET /api/v1/api_keys/generate_web3_key للحصول على token قصير الأمد موقّع من Venice. الـ endpoint غير مُصادَقة.
تحتوي الاستجابة على حقل token. ينتهي الـ token بعد 15 دقيقة من إصداره، لذا وقّعه وأرسله قبل ذلك بكثير.
4

وقّع الـ token بمحفظة الـ staking

وقّع سلسلة الـ token الخام بالمحفظة التي تحمل VVV المُكدَّس. هذا personal_sign قياسي على بايتات الـ token. كلا ethers.Wallet.signMessage(token) و account.signMessage({ message: token }) من viem يُنتجان التوقيع الصحيح.
5

أصدر مفتاح API

POST العنوان والتوقيع والـ token إلى نفس الـ endpoint، بالإضافة إلى نوع المفتاح الذي تريده.
الحقول المطلوبة: address و signature و token و apiKeyType (INFERENCE أو ADMIN).الحقول الاختيارية: description و expiresAt و consumptionLimit (يحد من إجمالي الإنفاق على هذا المفتاح، بالعملة usd أو vcu أو diem).عند النجاح، تحتوي الاستجابة على سلسلة apiKey المُصدَرة. خزّنها في مخزن أسرار الوكيل واستخدمها كـ Bearer token عادي (Authorization: Bearer <key>).

مثال شامل

يستخدم المثال أدناه محفظة حقيقية من متغير بيئة بدلًا من محفظة مُولَّدة عشوائيًا. المحفظة العشوائية ليس لديها VVV مُكدَّس وسيتم رفض الإصدار بخطأ Wallet has no staked VVV on Base.

مرجع الأخطاء

تُعيد الـ endpoint رسائل خطأ محددة وقابلة للتنفيذ. عيّن هذه في الوكيل حتى يتمكن من تقرير ما إذا كان سيعيد المحاولة أم يطلب token جديدًا أم يتوقف.

الدفع للاستدلال

إصدار مفتاح والقدرة على استدعاء endpoints مدفوعة به شيئان منفصلان. المفتاح المُصدَر حديثًا يصادق بشكل صحيح لكنه لا يستطيع استدعاء endpoints مدفوعة (مثل /chat/completions) حتى يكون لدى حساب المحفظة رصيد قابل للإنفاق. يمكن للمفتاح المُصدَر الإنفاق من حساب المستخدم بترتيب الأولوية هذا: DIEM، ثم الاعتمادات المُجمَّعة، ثم الدولار الأمريكي. إذا احتاج الوكيل إلى مسار تمويل crypto-native بالكامل وبدون رأس، فإن الخيارات الأنظف هي:
  1. قم بـ stake لمزيد من VVV بحيث تغطي حصة DIEM اليومية إنفاق الوكيل. يلتقط المفتاح المُصدَر هذا تلقائيًا.
  2. استخدم تدفق محفظة x402 بدلًا من مفتاح API. مع x402 يوقّع الوكيل رسالة Sign-In-With-X لكل طلب، ويشحن مباشرة بـ USDC على Base أو Solana عبر POST /api/v1/x402/top-up، ويدفع لكل طلب. رصيد x402 USDC مرتبط بالمحفظة وليس بالمستخدم، لذا فهو لا يظهر كرصيد لمفتاح Bearer المُصدَر، لكنه يسمح لنفس المحفظة بدفع الاستدلال برمجيًا.

موارد ذات صلة

Crypto والوكلاء

استخدم Venice كموفّر للنموذج وكطبقة RPC للبلوكشين معًا للوكلاء المستقلين.

مصادقة محفظة x402

ادفع لكل طلب بـ USDC على Base أو Solana، دون الحاجة إلى مفتاح API.

Endpoint إنشاء مفتاح Web3 API

مرجع endpoint لـ endpoint الإصدار.

دليل مفتاح API القياسي

للمستخدمين الذين يفضلون إصدار مفتاح من اللوحة.