Skip to main content

Cloud Security Alliance AI Foundation Model API Clients

Project description

Cloud Security Alliance AI Foundation Model API Clients

This Python library (csa_ai_foundation_model_api_clients) provides API access to text completions for:

  • Anthropic Claude 3
  • Google Gemini 1.5
  • OpenAI ChatGPT 4

and has plans to add:

  • OpenAI ChatGPT 4 batch mode

You can set the following options:

  • system prompt (aka developer prompt, persona)
  • user prompt (aka instructions)
  • user data (as part of the user prompt)
  • temperature
  • max_tokens

and has plans to add:

  • top_p
  • top_k
  • model specific paramaters

Please note this code does not have tests, or good error handling, but it works. Also with respect to handling rate limiting that is on the todo, but currently if you use this tool put a sleep statement to slow it down.

The code will be looking for the API key as an env variable:

  • ANTHROPIC_CLAUDE_API_KEY
  • GOOGLE_GEMINI_API_KEY
  • OPENAI_CHATGPT_API_KEY

Examples:

Using this as a library:

#!/usr/bin/env python3

import os

from csa_ai_foundation_model_api_clients import FoundationModelAPIClient

def main():
    model_name = 'claude' # or "claude-haiku" or "chatgpt" or "gemini"
    api_key = "SECRET_API_KEY_VALUE" # You can remove api_key here if the env variable is set 

    client = FoundationModelAPIClient(model_name, api_key) # You can remove api_key here if the env variable is set 

    system_prompt = "You are a helpful assistant who speaks in rhymes."
    user_prompt = "What is the capital of France?"
    user_data = None
    output_file = 'response.json'

    response = client.generate_response(
        system_prompt,
        user_prompt,
        user_data,
        temperature=0.7,
        max_tokens=100,
        output_file=output_file
    )

if __name__ == '__main__':
    main()

Using this as a command line tool (you must be in the directory where csa_ai_foundation_model_api_clients.py is because of a relative import path):

./csa_ai_foundation_model_api_clients.py \
    --model chatgpt \
    --system system-prompt.txt \
    --user-prompt user-prompt.txt \
    --user-data user-data.txt \
    --output output.json \
    --temperature 0.9 \
    --max_tokens 2000

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

csa_ai_foundation_model_api_clients-0.1.5.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file csa_ai_foundation_model_api_clients-0.1.5.tar.gz.

File metadata

File hashes

Hashes for csa_ai_foundation_model_api_clients-0.1.5.tar.gz
Algorithm Hash digest
SHA256 dfe3daa4aabba3c1dba859f686b2d9520ec38ac2c26ece6ebd1b0050e17012d0
MD5 8aa8d7d00c3b546aa7df4218e1b8712c
BLAKE2b-256 1f3da2ecbb130e34d422d33190f023eaa23a5a84b91f009b45c0b2eea14369b6

See more details on using hashes here.

File details

Details for the file csa_ai_foundation_model_api_clients-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for csa_ai_foundation_model_api_clients-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 50b01de1812f3f1dcc983ee1e5f376acbd5114f4d7f1b22708530c6fd56dcae4
MD5 3b06be4c6444a89c7dca9d5cf64acd70
BLAKE2b-256 47b65060c4d267934b38492b4175e2a14951de55209589c0612f8e0b1d9f975d

See more details on using hashes here.

Supported by

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