Skip to content

Commit

Permalink
Classify tutorial [(#1120)](GoogleCloudPlatform/python-docs-samples#1120
Browse files Browse the repository at this point in the history
)

* first version of classify_text tutorial

* addressing comments

* classify text tutorial

* update client version

* year first written

* use auto generated README

* add README.rst.in and README.rst

* addressing review comments

* add tests for index and query

* import order

* add numpy to requirements
  • Loading branch information
dizcology authored and Jon Wayne Parrott committed Sep 19, 2017
1 parent 1259485 commit 1bcae11
Show file tree
Hide file tree
Showing 22 changed files with 522 additions and 0 deletions.
126 changes: 126 additions & 0 deletions samples/snippets/classify_text/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
.. This file is automatically generated. Do not edit this file directly.
Google Cloud Natural Language API Python Samples
===============================================================================

This directory contains samples for Google Cloud Natural Language API. The `Google Cloud Natural Language API`_ provides natural language understanding technologies to developers.

This tutorial demostrates how to use the `classify_text` method to classify content category of text files, and use the result to compare texts by their similarity to each other. See the `tutorial page`_ for details about this sample.

.. _tutorial page: https://cloud.google.com/natural-language/docs/classify-text-tutorial




.. _Google Cloud Natural Language API: https://cloud.google.com/natural-language/docs/

Setup
-------------------------------------------------------------------------------


Authentication
++++++++++++++

Authentication is typically done through `Application Default Credentials`_,
which means you do not have to change the code to authenticate as long as
your environment has credentials. You have a few options for setting up
authentication:

#. When running locally, use the `Google Cloud SDK`_

.. code-block:: bash
gcloud auth application-default login
#. When running on App Engine or Compute Engine, credentials are already
set-up. However, you may need to configure your Compute Engine instance
with `additional scopes`_.

#. You can create a `Service Account key file`_. This file can be used to
authenticate to Google Cloud Platform services from any environment. To use
the file, set the ``GOOGLE_APPLICATION_CREDENTIALS`` environment variable to
the path to the key file, for example:

.. code-block:: bash
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service_account.json
.. _Application Default Credentials: https://cloud.google.com/docs/authentication#getting_credentials_for_server-centric_flow
.. _additional scopes: https://cloud.google.com/compute/docs/authentication#using
.. _Service Account key file: https://developers.google.com/identity/protocols/OAuth2ServiceAccount#creatinganaccount

Install Dependencies
++++++++++++++++++++

#. Install `pip`_ and `virtualenv`_ if you do not already have them.

#. Create a virtualenv. Samples are compatible with Python 2.7 and 3.4+.

.. code-block:: bash
$ virtualenv env
$ source env/bin/activate
#. Install the dependencies needed to run the samples.

.. code-block:: bash
$ pip install -r requirements.txt
.. _pip: https://pip.pypa.io/
.. _virtualenv: https://virtualenv.pypa.io/

Samples
-------------------------------------------------------------------------------

Classify Text Tutorial
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



To run this sample:

.. code-block:: bash
$ python classify_text_tutorial.py
usage: classify_text_tutorial.py [-h]
{classify,index,query,query-category} ...
Using the classify_text method to cluster texts.
positional arguments:
{classify,index,query,query-category}
classify Classify the input text into categories.
index Classify each text file in a directory and write the
results to the index_file.
query Find the indexed files that are the most similar to
the query text.
query-category Find the indexed files that are the most similar to
the query label. The list of all available labels:
https://cloud.google.com/natural-
language/docs/categories
optional arguments:
-h, --help show this help message and exit
The client library
-------------------------------------------------------------------------------

This sample uses the `Google Cloud Client Library for Python`_.
You can read the documentation for more details on API usage and use GitHub
to `browse the source`_ and `report issues`_.

.. _Google Cloud Client Library for Python:
https://googlecloudplatform.github.io/google-cloud-python/
.. _browse the source:
https://github.com/GoogleCloudPlatform/google-cloud-python
.. _report issues:
https://github.com/GoogleCloudPlatform/google-cloud-python/issues


.. _Google Cloud SDK: https://cloud.google.com/sdk/
26 changes: 26 additions & 0 deletions samples/snippets/classify_text/README.rst.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# This file is used to generate README.rst

product:
name: Google Cloud Natural Language API
short_name: Cloud Natural Language API
url: https://cloud.google.com/natural-language/docs/
description: >
The `Google Cloud Natural Language API`_ provides natural language
understanding technologies to developers.


This tutorial demostrates how to use the `classify_text` method to classify content category of text files, and use the result to compare texts by their similarity to each other. See the `tutorial page`_ for details about this sample.


.. _tutorial page: https://cloud.google.com/natural-language/docs/classify-text-tutorial

setup:
- auth
- install_deps

samples:
- name: Classify Text Tutorial
file: classify_text_tutorial.py
show_help: true

cloud_client_library: true
Loading

0 comments on commit 1bcae11

Please sign in to comment.