From ea48dd7a4089aba1e81316a59d63528767cf60b6 Mon Sep 17 00:00:00 2001 From: Ryan Matsumoto Date: Sat, 19 Oct 2019 21:08:52 -0700 Subject: [PATCH] New Functions Natural Language API sample --- functions-language/language.py | 28 ++++++++++++++++++++++++++++ functions-language/requirements.txt | 3 +++ 2 files changed, 31 insertions(+) create mode 100644 functions-language/language.py create mode 100644 functions-language/requirements.txt diff --git a/functions-language/language.py b/functions-language/language.py new file mode 100644 index 0000000..4417bfd --- /dev/null +++ b/functions-language/language.py @@ -0,0 +1,28 @@ +from google.cloud import language +from google.cloud.language import types +from google.cloud.language import enums + +def hello_world(request): + """Responds to any HTTP request. + Args: + request (flask.Request): HTTP request object. + Returns: + The response text or any set of values that can be turned into a + Response object using + `make_response `. + """ + request_json = request.get_json() + if request.args and 'message' in request.args: + client = language.LanguageServiceClient() + text = request.args.get('message') + document = types.Document( + content=text, + type=enums.Document.Type.PLAIN_TEXT) + sentiment = client.analyze_sentiment(document).document_sentiment + score = sentiment.score + magnitude = sentiment.magnitude + return str(score*magnitude) + elif request_json and 'message' in request_json: + return request_json['message'] + else: + return f'Hello World!' \ No newline at end of file diff --git a/functions-language/requirements.txt b/functions-language/requirements.txt new file mode 100644 index 0000000..3992d58 --- /dev/null +++ b/functions-language/requirements.txt @@ -0,0 +1,3 @@ +# Function dependencies, for example: +# package>=version +google-cloud-language \ No newline at end of file