יצירת עזרה מבוססת-AI גנרטיבי משלכם

התכונה 'יצירת עוזר מבוסס-AI גנרטיבי משלך' מאפשרת לכם ליצור כלי ליצירת טקסט ולשלב אותו עם Agent Assist. כלי ליצירת טקסט משתמש במודלי שפה גדולים מתקדמים (LLM), כמו Text Bison ו-Gemini, כדי ליצור הצעות. אתם יכולים להשתמש בהצעות האלה כדי לעזור למשתתפים משני הצדדים של שיחה עם שירות לקוחות, כמו נציגים אנושיים ומשתמשים אנושיים. הגנרטור יכול להשתמש בקריאות מובנות למודלי שפה גדולים מ-Agent Assist, שאפשר להגדיר אותן לרוב המשימות של מודלי שפה גדולים. מידע נוסף על גנרטורים ב-Agent Assist זמין במסמכי העזרה של Vertex AI.

הנתונים שעליהם מתבסס הגנרטור

כלי ליצירת טקסט דורש את הקלט הבא:

  • הוראה: טקסט שמתאר את המשימה שרוצים שכלי ליצירת טקסט יבצע. ב-Vertex AI, ההוראה נקראת הנחיה.

  • אפשרויות המודל: בחירת המודל וההגדרות שנדרשות לביצועים אופטימליים של המודל, כמו טמפרטורה, מגבלת טוקנים של הפלט, TopK ו-TopP. ההגדרות האלה מגבילות את התוצאות של הגנרטור. כשיוצרים גנרטור, אפשר לבחור מודל ולהגדיר את האפשרויות שלו בלחיצה על אפשרויות המודל, או להשתמש בהגדרות ברירת המחדל. ב-Vertex AI, אפשרויות המודל נקראות ערכי פרמטרים.

  • אירוע הפעלה: אחד מהאירועים הבאים שמציין מתי להפעיל את הגנרטור:

    • END_OF_UTTERANCE: מפעיל את הגנרטור אחרי כל אמירה שמוזנת.
    • MANUAL_CALL: הגנרטור מופעל רק כשמבצעים קריאות ל-API כדי להפעיל אותו.
    • CUSTOMER_MESSAGE: מפעיל את הגנרטור רק אחרי כל הודעה מלקוח.
    • AGENT_MESSAGE: ההפעלה של הגנרטור מתבצעת רק אחרי כל הודעה של הסוכן.

פלט מהגנרטור

אחרי שמזינים את הקלט לכלי ליצירת טקסט, הגנרטור 'יצירת עזרה משלך באמצעות AI גנרטיבי' מספק הצעות כמו קישורים למאמרים, תשובות מתאימות או מידע על מבצעים. ההצעות האלה מוצגות בפורמט טקסט והן רלוונטיות להקשר של השיחה עם שירות הלקוחות בזמן שהן נוצרות.

תרחישים לדוגמה

בקטע הזה מוצגים שלושה תרחישי שימוש כדוגמאות לאופן שבו אפשר להטמיע את התכונה 'יצירת גנרטורים משלכם ל-GenAI'. יכול להיות שהמודל שלכם יפיק תשובות שונות מהדוגמאות הבאות.

שכתוב מקצועי

אתם יכולים להנחות את הגנרטור לנסח מחדש את דברי הנציג האנושי בצורה מקצועית, מנומסת ואמפתית לפני שהוא משיב ללקוחות, באופן הבא.

  • שם המחולל: שכתוב מקצועי
  • אירוע טריגר: הודעה לנציג התמיכה
  • הוראות:

    # TASK DESCRIPTION:
    Output the agent's response under ## LAST UTTERANCE rewritten in a professional, polite and empathetic way in EXAMPLE 4.
    - DO NOT miss any information mentioned by the original text.
    - Only output rewritten response.
    - You're provided with EXAMPLE 1-3. Follow the format.
    
    # EXAMPLE 1
    ## CONVERSATION:
    AGENT: Yo what's up it's Akshay. This is Amazon customer service. What do you want?
    
    ## LAST UTTERANCE:
    Yo what's up it's Akshay. This is Amazon customer service. What do you want?
    
    ## OUTPUT:
    Hi I'm Akshay. Thank you for choosing Amazon customer service. How can I assist you today?
    
    # EXAMPLE 2
    ## CONVERSATION:
    CUSTOMER: Hi, I'm having some trouble with my Apple Music subscription.
    AGENT: Hey, I'm [name]. I can help, I guess. What's your name and account number?
    CUSTOMER: Sure, my name is [name] and my account number is [number].
    AGENT: Alright. Checked that out. You are on Apple Music Individual plan, right?
    
    ## LAST UTTERANCE:
    Alright. Checked that out. You are on Apple Music Individual plan, right?
    
    ## OUTPUT:
    Thank you. I see that you're currently subscribed to the Apple Music Individual plan. Is that correct?
    
    # EXAMPLE 3
    ## CONVERSATION:
    AGENT: What is your order number?
    CUSTOMER: 12345
    AGENT: Hang on a sec. Looking.
    CUSTOMER: I'll wait.
    AGENT: Alright, it appears your order is not registered. Did you even submit the order?
    CUSTOMER: Let me double check. Shoot, someone canceled it. Must be the kids.
    AGENT: Yeah, watch your kids will you?
    CUSTOMER: I'm so sorry.
    AGENT: All good. Have a good one.
    
    ## LAST UTTERANCE:
    All good. Have a good one.
    
    ## OUTPUT:
    No problem. I'm glad I can help. Please have a good day!
    
    # EXAMPLE 4
    ## CONVERSATION:
    ${parameter:transcript}
    
    ## LAST UTTERANCE:
    ${parameter:transcript_last_utterance}
    
    ## OUTPUT:
    

שימור לקוחות

אפשר גם להנחות את הגנרטור להציע תשובות של סוכן לשימור לקוחות, כמו מתן הנחות על מוצרים, מכירת מוצרים יקרים יותר או מוצרים משלימים ופתרון בעיות, כמו בדוגמה הבאה. הגנרטור ניגש למידע שאתם מספקים על הנחות ומבצעים כהפניות להקשר באמצעות IngestContextReferences API.

  • שם הגנרטור: נטישת לקוחות ושימור לקוחות
  • אירוע טריגר: הודעה לעסק
  • הפניות להקשר: מבצעים
    • אחת: 11% הנחה
    • ‫Nest: הנחה של 5%
    • הנחה ללקוחות חדשים: 10%
  • הוראות:

    # TASK DESCRIPTION:
    You are an Agent who is helping a customer resolve an issue with complete understanding of the same.
    - Make sure you wait to understand the concern or query before making any suggestions.
    - If the customer informs about the issue, you need to ask the exact reason. If the reason is valid, you can give appropriate credit from the OFFERS section.
    - If the customer is about to cancel an order or subscription, make sure you offer something from the OFFERS section and try to retain the customer.
    - If a customer is inquiring about a new product, offer some combo for upselling another product.
    Below are two examples for detecting churn and generating suggestions for mitigation.
    The output should be a single message suggested to the agent according to the context of the conversation.
    
    # EXAMPLE 1
    Customer: Hello
    Agent: Welcome to Google. How may I help you?
    Customer: I want to cancel order.
    Agent: Sure Let me have an order ID.
    Customer: Its 123321
    Agent: I could see that you placed an order for Google Nest. May I know the reason for cancellation?
    Customer: It's available at cheaper rate now. 
    Agent: Ohh.! I see. Let me check the current price and adjust the order price. Is it okay ?
    Customer: Sure..! I can purchase the product  as long as I can get it at the discounted price. I'd definitely go with it
    Agent: Google Nest costs $200 at present. I can see that you paid $230.
    Customer: Yeah. Can you request to refund $30. I can buy it at $200.
    Agent : Sure. I have updated. You will get $30 refund once your order is delivered.
    Customer: Thanks.
    Agent : Welcome
    
    # EXAMPLE 2
    Customer: Hello
    Agent: Welcome to Google. How may I help you?
    Customer: I am having Google One Subscription. I think I may need some more space in future. 
    Agent: Okay. May I have your customer Id:
    Customer: Its 123321
    Agent: I could see that you have 100GB Plan at present. How much are you expecting to need in future?
    Customer: I think I may need 100GB or more.
    Agent: I could check that you are a loyal customer who had subscriptions since last 6 months. I can provide you 10% discount. 
    Customer: Sure..! That would be great. 
    Agent: 200GB Subscription costs $180 per annum which I can offer you at $162.
    Customer: That's cool. Thank you.
    Agent: Is there anything else I can help you with?
    Customer: No thanks.
    
    ## CONTEXT
    ${parameter:transcript}
    
    ## OFFERS
    ${parameter:offers}
    

יצירת גנרטור

בדוגמאות הבאות מוסבר איך ליצור כלי משלכם ליצירת טקסט באמצעות AI גנרטיבי.

המסוף

כדי ליצור גנרטור באמצעות מסוף Agent Assist:

  1. במסוף Cloud, נכנסים לדף Build-your-own-assist.

    מעבר אל Build-your-own-assist

  2. לוחצים על יצירה.

  3. מזינים את שם הגנרטור.

  4. בוחרים את האירוע המפעיל מהרשימה.

  5. מזינים את ההוראה להגדרת המשימה.

  6. לוחצים על Model Options (אפשרויות המודל) ובוחרים מודל מהרשימה.

  7. מגדירים את הפרמטרים או משתמשים בהגדרות ברירת המחדל.

  8. לוחצים על שמירה ואז שוב על שמירה כדי לשמור את הגנרטור.

REST

כדי ליצור גנרטור באמצעות ה-API:

  1. מבצעים קריאה ל-CreateGenerator מהמשאב Generator.
  2. מזינים את שם הגנרטור בשדה description.
  3. מזינים את האירוע המפעיל.
  4. מזינים את ההוראה להגדרת המשימה ב-FreeFormContext.text.
  5. מזינים שם של מודל בשדה published_model או משאירים אותו ריק כדי להשתמש במודל ברירת המחדל.
  6. מציינים את פרמטרים של המודל בשדה inference_parameter או משאירים אותו ריק כדי להשתמש בערכי ברירת המחדל.

פרמטרים

כדי להוסיף הקשר להוראה, אפשר לסמן מילים כפרמטרים באמצעות הפורמט ${parameter:<parameter_name>}. אפשר גם להשתמש ב-Data Ingestion API כדי לייבא את הערך בפועל של פרמטר באמצעות קריאה ל-method IngestContextReferences בשיחה. בשיטה הזו, הפרמטרים בהוראה יוחלפו בערך שלהם במהלך זמן הריצה.

הנה דוגמה ל-JSON שמראה איך לייבא את ערך הפרמטרים באמצעות קריאה ל-IngestContextReferences:

{
  "contextReferences": {
    "glossary": {
      "contextContents": [
        {
          "content": "east one",
          "contentFormat": "PLAIN_TEXT"
        }
      ]
    }
  }
}

יש גם פרמטרים של גנרטורים שלא צריך להזין. הפרמטרים המובנים האלה הם:

  • ${parameter:transcript}: השיחה בין הסוכן לבין המשתמש, כולל האמירה האחרונה של המשתמש.
  • ${parameter:transcript_last_utterance}: האמירה האחרונה בשיחה.

צריך להשתמש לפחות בפרמטר מובנה אחד בכל הוראה.

הפרמטרים של הגנרטור שונים מהאפשרויות של המודל שמוגדרות כשיוצרים את הגנרטור, בין אם הוא מובנה או מוזן. הערכים של הפרמטרים האלה של הגנרטור מגיעים מתמליל שיחה או מנתונים שהוזנו. מצד שני, אתם מגדירים את הערכים של אפשרויות הדגם עבור הגנרטור כולו.

בדיקת מחולל

במסוף Build your own GenAI assist, אפשר לבדוק את הגנרטור בקטע Test generator.

כדי לבדוק גנרטור במסוף Build your own GenAI assist:

המסוף

  1. הוספת תמליל של השיחה. אפשר להזין את האמירות באופן ידני או להעלות תמליל בפורמט JSON בלחיצה על העלאה.
  2. כדי להוסיף עוד נתונים שצריך להטמיע, לוחצים על more_vert ואז על note_add הוספת נתונים מוזרקים.

במסוף 'יצירת תשובות באמצעות AI גנרטיבי' מוצגות תשובות שנוצרו עם הערות שכוללות את שם הגנרטור.

REST

כדי לבדוק גנרטור באמצעות ה-API:

  1. מזינים את שם הגנרטור בשדה generatorName.
  2. מזינים את השיחות בשדה conversationContext.
  3. אם יש ערכי פרמטרים, מזינים אותם בשדה contextReferences.
  4. מזינים את הטריגר ליצירת ההצעות בשדה triggerEvents. ההצעות שנוצרו זמינות בשדה generatorSuggestion.

פרופיל שיחה

פרופיל שיחה מגדיר קבוצה של פרמטרים ששולטים בהצעות שמוצגות במהלך שיחה. בשלבים הבאים נוצר משאב conversationProfile עם אובייקט HumanAgentAssistantConfig.

המסוף

  1. במסוף Agent Assist, עוברים לדף Conversation profiles.
  2. לוחצים על ‎+ Create.
  3. מזינים את השם המוצג.
  4. בוחרים את סוג ההצעה check_box Build-your-own-assist.
  5. מזינים את שם הגנרטור או בוחרים את שם הגנרטור מהרשימה.

REST

  1. מבצעים קריאה ל-create method מ-conversation profile resource.
  2. נותנים שם לפרופיל השיחה החדש.
  3. מזינים את קוד השפה.
  4. מזינים את שם הגנרטור ב-human_agent_suggestion_config.

הנה דוגמה ל-JSON של פרופיל שיחה.

{
  "displayName": "build-your-own-assist-test",
  "humanAgentAssistantConfig": {
    "humanAgentSuggestionConfig": {
      "generators": "projects/PROJECT_ID/locations/global/generators/GENERATOR_ID"
    }
  }
}

אימות באמצעות הסימולטור

אפשר לאמת את פרופיל השיחה בסימולטור של Agent Assist. בסימולטור מוצגות תשובות שנוצרו עם הערות שכוללות את שם הגנרטור.

בדיקת הנחיה

במסוף 'יצירת עוזר GenAI משלכם', אפשר לבדוק הנחיה באמצעות הסימולטור, בדיוק כמו שמאמתים פרופיל שיחה. הפלט שנוצר ומוצג בתמונה הבאה מדגים עד כמה הגנרטור freeform-tool-test1 פעל לפי ההנחיה לדוגמה.

שיחות בזמן ריצה

שיחה מוגדרת כאינטראקציה בין נציג, כולל נציגים אנושיים ונציגים וירטואליים, לבין לקוח או משתמש קצה שזקוק לתמיכה. בזמן הריצה, כשמתחילה שיחה בין משתמש קצה לבין סוכן אנושי, יוצרים שיחה. כדי לראות הצעות, צריך ליצור משתתף שהוא משתמש קצה ומשתתף שהוא נציג שירות אנושי, ולהוסיף אותם לשיחה.

יצירת שיחה

כדי ליצור שיחה:

  1. מבצעים קריאה ל-method‏ create מ-conversation resource.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • CONVERSATION_PROFILE_ID: מזהה פרופיל השיחה

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations

תוכן בקשת JSON:

{
  "conversationProfile": "projects/PROJECT_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
}

בתוך תגובת ה-JSON, פלח הנתיב אחרי conversations מכיל את מזהה השיחה החדש. תגובת ה-JSON אמורה להיראות כך:

{
  "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID",
  "lifecycleState": "IN_PROGRESS",
  "conversationProfile": "projects/PROJECT_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "startTime": "2023-11-05T21:05:45.622Z"
}

יצירת משתתף שהוא משתמש קצה

כדי ליצור משתתף שהוא משתמש קצה:

  1. מבצעים קריאה ל-method‏ create מהמשאב participants.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • CONVERSATION_ID: מזהה השיחה

מזינים את מזהה השיחה ואת הערך END_USER בשדה התפקיד, באופן הבא.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants

תוכן בקשת JSON:

{
  "role": "END_USER",
}

בתוך תגובת ה-JSON, פלח הנתיב אחרי participants מכיל את מזהה המשתתף החדש של משתמש הקצה. תגובת ה-JSON אמורה להיראות כך:

{
 "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/USER_PARTICIPANT_ID", "role": "END_USER"
}

יצירת משתתף שהוא נציג אנושי

כדי ליצור משתתף שהוא נציג שירות:

  1. מבצעים קריאה ל-method‏ create מהמשאב participants.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • CONVERSATION_ID: מזהה השיחה

מספקים את מזהה השיחה ואת התפקיד HUMAN_AGENT בשדה באופן הבא.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants

תוכן בקשת JSON:

{
  "role": "HUMAN_AGENT",
}

בתוך תגובת ה-JSON, פלח הנתיב אחרי participants מכיל את מזהה המשתתף החדש שהוא סוכן אנושי. התגובה אמורה להיראות כך:

{
"name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/AGENT_PARTICIPANT_ID", "role": "HUMAN_AGENT"
}

ניתוח ההודעה

גנרטור יכול גם לנתח הודעה בשיחה. במהלך שיחה, אפשר להוסיף הודעה והגנרטור יכול לנתח גם הודעות של נציגים אנושיים וגם הודעות של משתמשי קצה באמצעות שיטת analyzeContent מהמשאב participants.

כדי להוסיף ולנתח הודעה של נציג שירות אנושי, פועלים לפי השלבים הבאים.

  1. מבצעים קריאה ל-analyzeContent.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • CONVERSATION_ID: מזהה השיחה
    • PARTICIPANT_ID: המזהה שלכם כמשתתפים שהם סוכנים אנושיים

צריך לספק את מזהה השיחה ואת מזהה המשתתף שהוא נציג שירות אנושי. הבקשה צריכה לכלול משהו דומה לטקסט הבא:

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent

תוכן בקשת JSON:

{
  "textInput": {
    "text": "Bonjour, ici le service client d'ABC fishing, comment puis-je vous aider aujourd'hui ?",
    "languageCode": "en-US"
  }
}

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "message": {
    "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID",
    "content": "Bonjour, ici le service client d'ABC fishing, comment puis-je vous aider aujourd'hui ?",
    "languageCode": "en-US",
    "participant": "PARTICIPANT_ID",
    "participantRole": "HUMAN_AGENT",
    "createTime": "2023-02-13T00:01:30.683Z"
  },
  "humanAgentSuggestionResults": [{
    "generateSuggestionsResponse": {
      "generatorSuggestionAnswers": [{
        "generatorSuggestion": {
          "freeFormSuggestion": {
            "response": "Hello, this is ABC fishing customer service, how can I help you today?"
          }
        },
        "sourceGenerator": "projects/PROJECT_ID/locations/global/generators/GENERATOR_ID",
        "answerRecord": "projects/PROJECT_ID/locations/global/answerRecords/ANSWER_RECORD_ID"
      }],
      "latestMessage": "projects/PROJECT_ID/locations/global/conversations/CONVERSATION_ID/messages/MESSAGE_ID"
    }
  }]
}

כדי להוסיף ולנתח הודעה למשתמשי קצה

  1. מבצעים קריאה ל-method‏ analyzeContent. אל תבצעו שיחות כפולות ל-method אם היא כבר הופעלה עבור תכונות אחרות של Agent Assist.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • CONVERSATION_ID: מזהה השיחה
    • PARTICIPANT_ID: המזהה שלכם כמשתתפים שהם סוכנים אנושיים

צריך לספק את מזהה השיחה ואת מזהה המשתתף שהוא נציג שירות אנושי. הבקשה צריכה לכלול משהו דומה לטקסט הבא:

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent

תוכן בקשת JSON:

{
  "textInput": {
    "text": "Hi",
    "languageCode": "en-US"
  }
}

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "message": {
    "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID",
    "content": "Hi",
    "languageCode": "en-US",
    "participant": "PARTICIPANT_ID",
    "participantRole": "END_USER",
    "createTime": "2020-02-13T00:07:35.925Z"
  },
  "humanAgentSuggestionResults": [{
    "generateSuggestionsResponse": {
      "generatorSuggestionAnswers": [{
        "generatorSuggestion": {
          "freeFormSuggestion": {
            "response": "Salut"
          }
        },
        "sourceGenerator": "projects/PROJECT_ID/locations/global/generators/GENERATOR_ID",
        "answerRecord": "projects/PROJECT_ID/locations/global/answerRecords/ANSWER_RECORD_ID"
      }],
      "latestMessage": "projects/PROJECT_ID/locations/global/conversations/CONVERSATION_ID/messages/MESSAGE_ID"
    }
  }]
}

אם השיחה הסתיימה ולא נעשה בה שימוש ב-analyzeContent, אפשר להשתמש בשיטה batchCreate מהמשאב messages כדי לייבא ולנתח היסטוריית הודעות של השיחה.

קבלת הצעות

הגנרטור גם מספק הצעות בתגובה להודעה בכל שלב בשיחה. כברירת מחדל, ההצעות מתייחסות להודעה האחרונה של אחד מהמשתתפים. אפשר גם לציין את ההודעה שרוצים לקבל לגביה הצעות. ההצעות מוצגות כברירת מחדל, אבל אפשר גם להשתמש באחד ממקורות המידע הבאים.

שימוש בהצעות שמופיעות

התשובה של analyzeContent מגיעה עם הצעות. ההצעות האלה נוצרות על ידי הגנרטור שהופעל. בקשת ה-JSON צריכה לכלול משהו דומה לזה:

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent

תוכן בקשת JSON:

{
  "textInput": {
    "text": "I want to reserve a room.",
    "languageCode": "en-US"
  }
}

שימוש במשאב suggestions

אפשר גם לפעול לפי השלבים הבאים כדי לקבל הצעות.

  1. מבצעים קריאה ל-method‏ generate מהמשאב suggestions.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • CONVERSATION_ID: מזהה השיחה
    • PARTICIPANT_ID: המזהה שלכם כמשתתפים שהם סוכנים אנושיים

צריך לציין את מזהה השיחה, את מזהה ההודעה האחרונה של אחד מהמשתתפים ואת אירועי הטריגר. אם לא מגדירים את השדה של מזהה ההודעה, ההצעות מבוססות כברירת מחדל על ההודעה האחרונה מאחד מהמשתתפים. לאחר מכן, יופעל הגנרטור שמשויך לאירוע ההפעלה. בקשת ה-JSON צריכה לכלול משהו דומה לזה:

ה-method של ה-HTTP וכתובת ה-URL:

POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_IDsuggestions:generate

תוכן בקשת JSON:

{
  "latestMessage": "projects/PROJECT_ID/conversations/CONVERSATION_IDmessages/Message_ID",
  "triggerEvents": [ "END_OF_UTTERANCE" ]
}

שימוש במשאב statelessSuggestion

דרך נוספת לקבל הצעות היא לפעול לפי השלבים הבאים.

  1. מבצעים קריאה ל-method‏ generate מהמשאב statelessSuggestion.
  2. לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
    • PROJECT_ID: מזהה הפרויקט
    • LOCATION_ID: מזהה המיקום

מספקים את הגנרטור, את ההודעות בשיחה ואת הפניות להקשר שמכילות נתונים שהוזנו. הנתונים שמוזנים מחליפים פרמטרים בהוראה של הגנרטור. בקשת ה-JSON שלכם צריכה להיראות בערך כך:

ה-method של ה-HTTP וכתובת ה-URL:

https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/statelessSuggestion:generate

תוכן בקשת JSON:

{
  "generator": {
    "description": "Translation",
    "triggerEvent": "END_OF_UTTERANCE",
    "freeFormContext": {
      "text": "Read the conversation between agent and customer, and the last utterance. Output the last utterance from customer by following these instructions:
      - If the last utterance from AGENT, output the utterance by translating it to English.
      - If the last utterance from CUSTOMER, output the utterance by translating it to French.
      - Specific brand names and technical terms specified under 'GLOSSARY' section, such as 'Google Home,' should remain unchanged as per the glossary guidelines.

# GLOSSARY
${parameter:glossary}

# CONVERSATION:
${parameter:transcript}

# LAST UTTERANCE:
${parameter:transcript_last_utterance}

# OUTPUT: "
    }
  },
  "contextReferences": {
    "glossary": {
      "contextContents": {
        "content": "east one",
        "contentFormat": "PLAIN_TEXT"
      }
    }
  },
  "conversationContext": {
    "messageEntries": [
      {
        "text": "hi",
        "languageCode": "en-US",
        "role": "END_USER",
        "createTime": {
          "seconds": "1400000000",
          "nanos": "10000000"
        }
      },
      {
        "text": "Bonjour, comment puis-je vous aider aujourd\\'hui ?",
        "languageCode": "en-US",
        "role": "HUMAN_AGENT",
        "createTime": {
          "seconds": "1400000010",
          "nanos": "10000000"
        }
      }
    ]
  },
  "triggerEvents": [
    "END_OF_UTTERANCE"
  ]
}

מגבלות המכסה

אפשר לראות את המכסות והמגבלות של Agent Assist בדף המכסות של Dialogflow. השימוש ב-Build your own GenAI assist כפוף למגבלות הבאות של מכסת השימוש:

שם תיאור הגבלה
פעולות של מנהל הגנרטורים לדקה (לכל אזור) מגבלה על מספר הפעולות במנהל הגנרטורים שאפשר לבצע בכל דקה, כמו יצירה, הצגה או מחיקה של גנרטורים. 300
גנרטורים (לפי אזור) הגבלה על המספר המקסימלי של גנרטורים שאפשר ליצור בפרויקט יחיד. 200
פעולות של הצעות גנרטור לדקה לכל סוג מודל (לכל אזור) מגבלה על מספר הבקשות להפעלת הצעות גנרטור שאפשר לקבל בכל דקה לכל סוג מודל. 10