נ.ב. מדריך זה מיועד לעיצוב #AI Chatbot במסגרת תחרות הכתיבה #AI-chatbot של Coze ו-HackerNoon!
לחץ על הכרטיסייה פלאגין ולחץ על צור פלאגין . לחלופין, תוכל לבקר בדף הפיתוח של הסוכן וליצור פלאגינים.
בחר Plugin Cloud - Create in Coze IDE תחת התפריט הנפתח שיטת יצירת כלי Plugin .
בחר Python כשפת הבחירה שלך תחת זמן ריצה של IDE .
לחץ על אשר כדי להיות מופנה לדף הפלאגין כדי ליצור את הכלי שלך.
לחץ על צור כלי ב-IDE בדף הפלאגין .
לחץ על אשר כדי להיות מופנה לדף Coze IDE , שם תוכל לקודד את הכלי שלך.
לחץ על הסמל + בחלונית החבילות מימין כדי להוסיף תלות. כאן, עליך להתקין את חבילת r equests כדי שנוכל לשלוח HTTP.
from runtime import Args import requests API_KEY = "****" BASE_URL = "//api.coingecko.com/api/v3" def get_coin_data(coin_id: str, currency: str = "usd", logger=None): endpoint = f"{BASE_URL}/coins/markets" params = { "vs_currency": currency, "ids": coin_id.lower(), # Convert to lowercase "x_cg_demo_api_key": API_KEY } try: response = requests.get(endpoint, params=params) response.raise_for_status() # Raise an exception for bad status codes data = response.json() if logger: logger.info(f"API Response: {data}") return data except requests.RequestException as e: if logger: logger.error(f"API Request failed: {str(e)}") return {"error": f"API request failed: {str(e)}"} def handler(args: Args) -> dict: args.logger.info(f"Received args: {args}") args.logger.info(f"Type of args.input: {type(args.input)}") args.logger.info(f"Content of args.input: {args.input}") # Handle CustomNamespace object if hasattr(args.input, 'coin_id') and hasattr(args.input, 'currency'): coin_id = getattr(args.input, 'coin_id', 'bitcoin') currency = getattr(args.input, 'currency', 'usd') else: return { "message": f"Error: Invalid input format. Expected CustomNamespace with coin_id and currency attributes. Input: {args.input}", "data": None } args.logger.info(f"Processed input - coin_id: {coin_id}, currency: {currency}") try: coin_data = get_coin_data(coin_id, currency, args.logger) if "error" in coin_data: return { "message": f"Error: {coin_data['error']}", "data": None } else: # Check if we got any data if not coin_data: return { "message": f"No data found for {coin_id}", "data": None } # Assuming the API returns a list with one item for the specified coin coin_info = coin_data[0] if coin_data else {} return { "message": f"Successfully retrieved data for {coin_id}", "data": { "name": coin_info.get("name"), "symbol": coin_info.get("symbol"), "current_price": coin_info.get("current_price"), "market_cap": coin_info.get("market_cap"), "price_change_24h": coin_info.get("price_change_24h") } } except Exception as e: args.logger.error(f"An error occurred: {str(e)}") return { "message": f"An error occurred while processing the request: {str(e)}", "data": None }
פרמטרי קלט: coin_id (מחרוזת): המזהה של המטבע הקריפטוגרפי (למשל, "ביטקוין", "אתריום").
פרמטרי קלט: מטבע (מחרוזת): מטבע היעד עבור נתוני שוק (למשל, "USD", "eur")
פרמטרי פלט: הודעה (מחרוזת): הודעה המציינת את מצב הבקשה.
פרמטרי פלט: נתונים (אובייקט): בתוך אובייקט נתונים זה, השתמש בפרמטרים אלה.
בתוך פרמטרי פלט הנתונים שלך: שם (מחרוזת): שם המטבע הקריפטוגרפי.
בתוך פרמטרי פלט הנתונים שלך: סמל (מחרוזת): הסמל של המטבע הקריפטוגרפי.
בתוך פרמטרי פלט הנתונים שלך: current_price (מספר): המחיר הנוכחי במטבע שצוין.
בתוך פרמטרי פלט הנתונים שלך: market_cap (מספר): שווי השוק במטבע שצוין.
בפרמטרי פלט הנתונים שלך: price_change_24h (מספר): השינוי במחיר ב-24 השעות האחרונות
הזן את פרמטר הקלט שלך תחת הכרטיסייה קוד בדיקה כדי לבדוק, והפעל את התוסף שלך.
לחץ על הפעל .
הצג את ערך הפלט כדי לראות את התגובה של הכלי שלך.
הצג את היומנים בחלונית המסוף כדי לראות אם זה הצליח או שגיאה כלשהי.
לחץ על פרסם כדי לפרסם את הפלאגין שלך אם הבדיקה הצליחה.
סמן לא בתיבת הדו-שיח הצהרת איסוף פרטיות, מכיוון שהתוסף שלנו אינו אוסף נתוני משתמשים. עם זאת, אם הפלאגין שלך דורש נתוני משתמש, סמן כן .
לחץ על פרסם . עברו לחנות וחקור את .