def test_analyze(): old_get = requests.get try: def mock_get(url, params): global req_url, req_params req_url = url req_params = params return MockResponse(resp_json, url) requests.get = mock_get resp_json = {u('query'): None, u('intents'): [], u('entities'): []} l = luis.Luis(url='http://null/?x=1&q=') r = l.analyze('') assert req_url == 'http://null/?x=1' assert req_params == {'q': ''} assert len(r.intents) == 0 assert len(r.entities) == 0 assert r.best_intent() is None resp_json = { u('query'): u('set an alarm for tuesday'), u('intents'): [{ u('intent'): u('builtin.intent.alarm.set_alarm'), u('score'): 1.0 }], u('entities'): [{ u('resolution'): { u('date'): u('XXXX-WXX-2'), u('resolution_type'): u('builtin.datetime.date') }, u('type'): u('builtin.alarm.start_date'), u('entity'): u('tuesday') } ] } l = luis.Luis(url='http://null/?x=1') r = l.analyze('set an alarm for tuesday') assert req_url == 'http://null/?x=1' assert req_params == {'q': 'set an alarm for tuesday'} assert (r.intents[0].intent == 'builtin.intent.alarm.set_alarm') assert r.intents[0].score == 1.0 assert (r.best_intent().intent == 'builtin.intent.alarm.set_alarm') finally: requests.get = old_get
def message_response(message): s = luis.Luis( "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/c88fd2ed-73f8-4255-ae7f-7c07824252f6?subscription-key=b5a6e33be4244c189920b61a0249eefd&timezoneOffset=0&verbose=true&q=" ) text = "你好" text = s.analyze(message) print(text.entities) print(text.best_intent()) intent = "" answer = "" count = 0 for intent in text.entities: if intent.type in weather_list: count += 1 if count < 3: for i, j in enumerate(text.intent()): if i == count: break if j.intent == 'AskTemperature': answer += AskTemperature() answer += '\n' if j.intent == "AskHumidity": answer += AskHumidity() answer += '\n' if j.intent == "AskUV": answer += AskUV() answer += '\n' else: if j.intent == 'Weather': answer += AskHumidity() else: return "抱歉,我聽不懂你在說什麼" return answer
def structure_for_raw_text(text): l = luis.Luis(url=os.environ.get("LUIS_URL")) r = l.analyze(text) b = r.best_intent() if b.score > 0.5: return (b, r.entities) else: return None
def analyze_text(query): l = luis.Luis( url='https://eastus.api.cognitive.microsoft.com/luis/v2.0/apps/' + str(app_key) + '?subscription-key=' + str(sub_key) + '&verbose=true&timezoneOffset=0&q=') user_request = query #input("What do you want to do? ") r = l.analyze(user_request) return r
def _process(self, message, userinfo=None): """ Query LUIS. Return a Luis object with intents, entities, and the best intent. :param message: str: Message string. :rtype: luis.Luis() """ luis_object = luis.Luis(url=self.get_app_url()) prediction = luis_object.analyze(message) return prediction
def Analyze_User_Intent_LUIS(userText): l = luis.Luis( url= ' https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/d570cd5b-363f-4d0d-a1f0-9beddf2a8f5a?subscription-key=1a306c39a0af4a2d8692835e3b487dc5&verbose=true&timezoneOffset=0&q=' ) # r = l.analyze('Can I get the menu for today') r = l.analyze(userText) print(r.intents) best = r.best_intent() print(best.intent) return best.intent
def luiscall(message_text): # Use the URL LUIS gives you when you publish your app. l = luis.Luis( url= 'https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/adec8107-fabf-4224-8c4b-a8d1d8be1edb?subscription-key=53178a34ff3841b8a2320609a22a9f93&verbose=true&timezoneOffset=0&q= ' ) # Send text to be analyzed: r = l.analyze(message_text) print(r.best_intent()) print(r.entities)
def test_message_response(message): s = luis.Luis( "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/c88fd2ed-73f8-4255-ae7f-7c07824252f6?subscription-key=b5a6e33be4244c189920b61a0249eefd&timezoneOffset=0&verbose=true&q=" ) text = "你好" text = s.analyze(message) print(text.entities) count = 0 for entity in text.entities: print(entity.type) if entity.type in weather_list: count += 1 print(text.best_intent()) print(text.intents)
def ventana_hija(self, num): if num == 1: # Alfredo Santos var1 = alfredo.Alfredo() var1.mostrar('Programa por Alfredo Santos') elif num == 2: # Brandon Esquivel var2 = brandon.Brandon() var2.funcion('Programa por Brandon Esquivel') elif num == 3: # Cassandra González var3 = cassandra.Cassandra() var3.mostrar('Programa por Cassandra Gónzalez') elif num == 4: # Cynthia Lizeth var4 = cynthiaLizeth.CynthiaLizeth() var4.funcion('Programa por Cynthia Lizeth Barron Morales') elif num == 5: # David Martinez var5 = david.David() var5.mostrar('Programa por David Martinez') elif num == 6: # Eduardo Leal var6 = eduardoLeal.EduardoLeal() var6.poligono('Programa por Eduardo Leal') elif num == 7: # Erick Alexis Gallegos Ruiz var7 = erickAlexis.ErickAlexis() var7.mostrar('Programa por Erick Alexis Gallegos Ruiz') elif num == 8: # Francisco Javier Muñoz Rios var8 = franciscoJavier.FranciscoJavier() var8.funcion('Programa por Francisco Javier Muñoz Rios') elif num == 9: # Jesus De La Cruz var9 = jesus.Jesus() var9.mostrar('Programa por Jesus De La Cruz') elif num == 10: # Kenneth Mtz var10 = kenneth.Kenneth() var10.funcion('Programa por Kenneth Mtz') elif num == 11: # Luis Molina var11 = luis.Luis() var11.funcion('Programa por Luis Molina') elif num == 12: # Nicole Rodríguez González var12 = nicole.Nicole() var12.funcion('Programa por Nicole Rodríguez González') elif num == 13: # Víctor Hugo Vázquez Gómez var13 = victorHugo.VictorHugo() var13.ventana_hija('Programa por Víctor Hugo Vázquez Gómez')
#!/usr/bin/env python import luis LUIS_ENDPOINT = "" # Coloque aqui a URL do seu endpoint LUIS = luis.Luis(url=LUIS_ENDPOINT) class Main(object): """Baseado na pergunta do usuário, mostra a resposta mais adequada""" ANSWERS = { "BEST_LANGUAGE": "Sem sombra de dúvidas, a melhor linguagem de programação é Python.", "WORST_LANGUAGE": "Não sei, mas com a mais absoluta certeza, não é Python.", "ABOUT_PYTHON": "Python é a melhor linguagem de programação do mundo.", "WELCOME": "Oi amigo! Faça sua pergunta...", "GOODBYE": "Tchauzinho! :)", "SENTIDO_VIDA": "O sentido da vida é programar em Python.", "None": "Desculpe, não entendi. Por favor, tente escrever de outra forma." } def replies(self, text): """Baseado na pergunta do usuário, identifica qual a sua intenção""" intent = LUIS.analyze(text).best_intent().intent answer = self.ANSWERS[intent] return answer def start(self):
# coding: utf-8 # In[3]: questions_when = [] answers_when = [] questions_where = [] answers_where = [] # In[8]: import luis l = luis.Luis( url= 'https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/6dc24e47-4be6-4a17-bad5-11cf23a1f1b0?subscription-key=2c52009f6dfc4ef4af55e12fb680b68f&timezoneOffset=0&verbose=true&q=' ) question = input() r = l.analyze(question) best = r.best_intent() print(best.intent) quest = '' for i in range(0, len(r.entities)): quest = quest + ' ' + r.entities[i][0] print(quest) if best.intent == 'When': if len(answers_when) == 0 and len(questions_when) == 0: answer = input() answers_when.append(answer)
import urllib2 import urllib import requests from random import randint from flask import Flask, request from googleplaces import GooglePlaces, types, lang # Azure portal URL. base_url = 'https://westus.api.cognitive.microsoft.com/' # Your account key goes here. (used for cognitive services) account_key = '' google_places_key = '' headers = {'Content-Type':'application/json', 'Ocp-Apim-Subscription-Key':account_key} luis_url = luis_url = luis.Luis('') google_places = GooglePlaces(google_places_key) app = Flask(__name__) @app.route('/', methods=['GET']) def verify(): # when the endpoint is registered as a webhook, it must echo back # the 'hub.challenge' value it receives in the query arguments if request.args.get("hub.mode") == "subscribe" and request.args.get("hub.challenge"): if not request.args.get("hub.verify_token") == os.environ["VERIFY_TOKEN"]: return "Verification token mismatch", 403 return request.args["hub.challenge"], 200 return "Hello world", 200
new_corpus = [] new_corpus.append(new_complaint) new_comp = cv.transform(new_corpus).toarray() new_prediction = classifier.predict(new_comp) dept = lb_make.inverse_transform(new_prediction) return (dept[0]) ##################### CHATBOT CODE ##################### import luis # Use the URL LUIS gives you when you publish your app. l = luis.Luis( url= 'https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/235f96f0-c3a8-4dda-99a7-d78cfd3f198a?subscription-key=83bdfb8db88a4b1d950097fa842529a5&verbose=true&timezoneOffset=330&q= ' ) # Send text to be analyzed: ticket_no = 0 while (1): r = input("Enter text to bot: ") if r == 'exit': break res = l.analyze(r) if res.best_intent().intent == "Intro": response = 'Yo! How\'s it going? :)' elif res.best_intent().intent == "Goodbye": response = 'Happy to help :)'
import luis import sys LUISURL = "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/3fbbcb67-2cce-4f93-b3df-a13fdf216f96?staging=true&verbose=true&timezoneOffset=-360&subscription-key=cbd45d3a6e6242099f693af2a6d9e3df&q=" l = luis.Luis(url=LUISURL) #Testing phrases testString1 = 'Server Name 11 Oct 19 health check' testString2 = 'Server Name health check' testString3 = 'run Server Name health check' testString4 = 'zippy do dah' #Gets the LUIS intent from a string and prints to screen def luisGetIntent(intentString): res = l.analyze(intentString) print(res.intents) print() #Example of how the workflow for a request def luisWorkflow(intentString): print("Checking server is valid using RAP API") print("SERVER VALID") print("Running LUIS intent check") luisTest = l.analyze(intentString).best_intent().intent print("Intent response is '" + luisTest + "'") print("Run switch where case = '" + luisTest + "'") print("Running RAP API workflow for '" + luisTest + "'")
import luis # Use the URL LUIS gives you when you publish your api l = luis.Luis(url='https://https://api.projectoxford.ai/luis/...') # Send text to be analyzed: r = l.analyze('fly forward 10 feet')
import luis as msluis url = "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/9f0dd57a-bd9b-48dd-97c9-bea0c9b85ee6?subscription-key=77b349a96e6b4c0ea734e76cdf4dfd0d&verbose=true&timezoneOffset=0&q=" luis = msluis.Luis(url=url) routes = {'reset-password': '******'} entity_list = { 'reset-password': ['portal_id', 'postal_code', 'phone_number', 'city'] } ''' def getRoute(text): result = luis.analyze(text).best_intent() intent = result.intent entities = luis.analyze(data).entities route = routes.get(intent, None) return route ''' def getRoute(text): result = luis.analyze(text) intent = result.best_intent().intent entites = result.entities entites = extractEntities(entites, entity_list.get(intent, None)) return routes.get(intent, None), entites def extractEntities(entities, keys): if not entities or not keys: return None
import luis endpoint = 'https://api.projectoxford.ai/luis/v1/application?id=c413b2ef-382c-45bd-8ff0-f76d60e2a821&subscription-key=fe5ca229c0464f699f8a461c305360c5&q=' l = luis.Luis( url= 'https://api.projectoxford.ai/luis/v1/application?id=c413b2ef-382c-45bd-8ff0-f76d60e2a821&subscription-key=fe5ca229c0464f699f8a461c305360c5&q=' ) result = l.analyze('set the alarm for 12am!') print result.entities print result.intents
def test_no_url_errors(): with pytest.raises(luis.Error): l = luis.Luis()
def __init__(self, luisurl, debug=False): self.luis = luis.Luis(luisurl) self.response_dict = {} self.stem_dict = pickle.load(open('src/utils/stem_dict.dat', 'rb')) self.stemmer = SnowballStemmer("english") self.debug = debug