Query text

Find the indexed files that are the most similar to the query text.

Explore further

For detailed documentation that includes this code sample, see the following:

Code sample


To authenticate to Natural Language, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.

def query(index_file, text, n_top=3):
    """Find the indexed files that are the most similar to
    the query text.

    with open(index_file) as f:
        index = json.load(f)

    # Get the categories of the query text.
    query_categories = classify(text, verbose=False)

    similarities = []
    for filename, categories in index.items():
        similarities.append((filename, similarity(query_categories, categories)))

    similarities = sorted(similarities, key=lambda p: p[1], reverse=True)

    print("=" * 20)
    print(f"Query: {text}\n")
    for category, confidence in query_categories.items():
        print(f"\tCategory: {category}, confidence: {confidence}")
    print(f"\nMost similar {n_top} indexed texts:")
    for filename, sim in similarities[:n_top]:
        print(f"\tFilename: {filename}")
        print(f"\tSimilarity: {sim}")

    return similarities

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.