Skip to main content

Library for performing trends analysis via LLMs.

Project description

Trend Analyzer

Problem statement

It's time consuming to understand the changes happening in competitive / audience / creative landscapes without relying on heave pre-processing and data analysis techniques.

Solution

trend-analyzer uses power of large language models to analyze trends data located to SQL database and make it available for querying with a simple chat bot interface.

Deliverable (implementation)

trend-analyzer is implemented as a:

  • library - Use it in your projects with a help of TrendsAnalyzer class.
  • CLI tool - trend-analyzer tool is available to be used in the terminal.
  • HTTP endpoint - trend-analyzer can be easily exposed as HTTP endpoint.
  • Langchain tool - integrated trend-analyzer into your Langchain applications.

Deployment

Prerequisites

  • Python 3.11+

  • A GCP project with billing account attached

  • Service account created and service account key downloaded in order to write data to BigQuery.

    • Once you downloaded service account key export it as an environmental variable

      export GOOGLE_APPLICATION_CREDENTIALS=path/to/service_account.json
      
    • If authenticating via service account is not possible you can authenticate with the following command:

      gcloud auth application-default login
      
  • API key to access to access Google Gemini.
    • Once you created API key export it as an environmental variable

      export GOOGLE_API_KEY=<YOUR_API_KEY_HERE>
      

Installation

Install trend-analyzer with pip install trend-analyzer command.

Usage

This section is focused on using trend-analyzer as a CLI tool. Check library, http endpoint, langchain tool sections to learn more.

Once trend-analyzer is installed you can call it:

trend-analyzer 'YOUR_QUESTION_HERE' \
  --llm gemini \
  --llm.model=gemini-1.5-flash \
  --db-uri=<DATABASE_URI> \
  --output-type csv \
  --output-destination sample_results

where:

  • YOUR_QUESTION_HERE - trends related question you want to ask.
  • --llm gemini - type of large language model (currently only Google Gemini is supported).
  • --llm.model=gemini-1.5-flash - any parameters to initialize selected LLM.
  • --db-uri=<DATABASE_URI> - location of database with trends data.
  • --output-type csv - type of output.
  • --output-destination sample_results - name of output table or file.

Disclaimer

This is not an officially supported Google product.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trend-analyzer-0.4.0.dev1.tar.gz (10.8 kB view details)

Uploaded Source

File details

Details for the file trend-analyzer-0.4.0.dev1.tar.gz.

File metadata

  • Download URL: trend-analyzer-0.4.0.dev1.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for trend-analyzer-0.4.0.dev1.tar.gz
Algorithm Hash digest
SHA256 6474a0a4ca0acd2653ff07cd66a1076ceb6fd2446b38f6f17ce07279f4c1a2b9
MD5 0a6936a7394ceb87535015ce6cc1a39a
BLAKE2b-256 2925de17e5050dcc4db2e05a0bf7ff7abc97b817f6b1a783005be021f4f1c2a6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page