ML Kit, डिवाइस पर मौजूद मॉडल का इस्तेमाल करके, मैसेज के कम जवाब जनरेट कर सकता है.
स्मार्ट जवाब जनरेट करने के लिए, आपको ML किट में हाल ही के मैसेज का लॉग पास करना होगा. बातचीत. अगर ML Kit को लगता है कि बातचीत अंग्रेज़ी में है, और बातचीत का विषय ऐसा नहीं है जो संवेदनशील हो, एमएल किट ज़्यादा से ज़्यादा तीन जवाब जनरेट करता है, जिनका सुझाव अपने उपयोगकर्ता को दिया जा सकता है.
इसे आज़माएं
- सैंपल वाले ऐप्लिकेशन को इस्तेमाल करके देखें, इस एपीआई के इस्तेमाल का एक उदाहरण देखें.
शुरू करने से पहले
- अपनी Podfile में, नीचे दिए गए ML Kit पॉड शामिल करें:
pod 'GoogleMLKit/SmartReply', '3.2.0'
- अपने प्रोजेक्ट के Pods को इंस्टॉल या अपडेट करने के बाद, इसके
.xcworkspace
. ML Kit, Xcode के 12.4 या इसके बाद के वर्शन पर काम करता है.
1. बातचीत के इतिहास के लिए ऑब्जेक्ट बनाएं
स्मार्ट जवाब जनरेट करने के लिए, ML Kit को समय के हिसाब से क्रम में पास किया जाता है
TextMessage
ऑब्जेक्ट, जिनमें सबसे पुराने टाइमस्टैंप पहले हैं. जब भी उपयोगकर्ता
मैसेज भेजता या रिसीव करता है, मैसेज, उसका टाइमस्टैंप, और मैसेज जोड़ें
बातचीत के इतिहास को भेजने वाले का यूज़र आईडी.
यूज़र आईडी कोई भी ऐसी स्ट्रिंग हो सकती है जिससे ईमेल भेजने वाले की खास पहचान की जा सके बातचीत. यह ज़रूरी नहीं है कि यूज़र आईडी किसी उपयोगकर्ता के डेटा से जुड़ा हो. और यूज़र आईडी का बातचीत के बीच में एक जैसा होना ज़रूरी नहीं है या स्मार्ट जवाब जनरेटर को शुरू करना.
अगर मैसेज उस व्यक्ति ने भेजा है जिसे जवाब के सुझाव चाहिए, तो यह सेट करें
isLocalUser
को सही के लिए सेट किया गया है.
Swift
var conversation: [TextMessage] = [] // Then, for each message sent and received: let message = TextMessage( text: "How are you?", timestamp: Date().timeIntervalSince1970, userID: "userId", isLocalUser: false) conversation.append(message)
Objective-C
NSMutableArray *conversation = [NSMutableArray array]; // Then, for each message sent and received: MLKTextMessage *message = [[MLKTextMessage alloc] initWithText:@"How are you?" timestamp:[NSDate date].timeIntervalSince1970 userID:userId isLocalUser:NO]; [conversation addObject:message];
बातचीत के इतिहास का ऑब्जेक्ट कैसा दिखता है, यह जानने के लिए नीचे दिया गया उदाहरण देखें:
टाइमस्टैंप | userID | isLocalUser | मैसेज |
---|---|---|---|
गुरुवार 21 फ़रवरी 13:13:39 पीएसटी 2019 | सही | क्या आप अपने रास्ते में हैं? | |
गुरुवार 21 फ़रवरी 13:15:03 पीएसटी 2019 | दोस्त0 | गलत | मुझे देर हो रही है, माफ़ करें! |
ML Kit, बातचीत के इतिहास में, पिछले मैसेज के जवाबों का सुझाव देती है. आखिरी मैसेज एक गैर-स्थानीय उपयोगकर्ता से होना चाहिए. ऊपर दिए गए उदाहरण में, बातचीत का आखिरी मैसेज गैर-स्थानीय उपयोगकर्ता FRIEND0 से है. जब इस लॉग के लिए पास एमएल किट का इस्तेमाल किया जाता है, तो यह FRIENDO के संदेश का जवाब: "देर से चल रही है, माफ़ करें!"
2. मैसेज के जवाब पाएं
किसी मैसेज के स्मार्ट जवाब जनरेट करने के लिए, SmartReply
का इंस्टेंस पाएं और पास
बातचीत के इतिहास को इसकी suggestReplies(for:completion:)
तरीके से जोड़ें:
Swift
SmartReply.smartReply().suggestReplies(for: conversation) { result, error in guard error == nil, let result = result else { return } if (result.status == .notSupportedLanguage) { // The conversation's language isn't supported, so // the result doesn't contain any suggestions. } else if (result.status == .success) { // Successfully suggested smart replies. // ... } }
Objective-C
MLKSmartReply *smartReply = [MLKSmartReply smartReply]; [smartReply suggestRepliesForMessages:inputText completion:^(MLKSmartReplySuggestionResult * _Nullable result, NSError * _Nullable error) { if (error || !result) { return; } if (result.status == MLKSmartReplyResultStatusNotSupportedLanguage) { // The conversation's language isn't supported, so // the result doesn't contain any suggestions. } else if (result.status == MLKSmartReplyResultStatusSuccess) { // Successfully suggested smart replies. // ... } }];
अगर कार्रवाई पूरी होती है, तो SmartReplySuggestionResult
ऑब्जेक्ट को
पूरा करने वाला हैंडलर. इस ऑब्जेक्ट में, सुझाए गए तीन से ज़्यादा आइटम की सूची शामिल है
जवाब, जिन्हें अपने उपयोगकर्ता को दिखाया जा सकता है:
Swift
for suggestion in result.suggestions { print("Suggested reply: \(suggestion.text)") }
Objective-C
for (MLKSmartReplySuggestion *suggestion in result.suggestions) { NSLog(@"Suggested reply: %@", suggestion.text); }
ध्यान दें कि अगर मॉडल को मशीन लर्निंग के बारे में नहीं पता, तो हो सकता है कि वह नतीजे न दिखाए सुझाए गए जवाब कितने काम के हैं, लेकिन इनपुट बातचीत अंग्रेज़ी भाषा हो या मॉडल, संवेदनशील विषय-वस्तु का पता लगाता हो.