Skip to main content

AIaaS Falcon Logo

AIaaS Falcon

Installation | Quickstart |

Documentation Coverage

Description

AIaaS_Falcon is Generative AI - LLM library interacts with different model api endpoints., allowing operations such as listing models, creating embeddings, and generating text based on certain configurations. AIaaS_Falcon helps to invoking the RAG pipeline in seconds.

Supported Endpoint Types:

  • Azure OpenAI
  • SingtelGPT
  • Dev_Quantized
  • Dev_Full

🛡️ Installation

Ensure you have the requests and google-api-core libraries installed:

pip install aiaas-falcon

if you want to install from source

git clone https://github.com/Praveengovianalytics/AIaaS_falcon && cd AIaaS_falcon
pip install -e .

Methods

Falcon Class

  • __init__ (config) Intialise the Falcon object with endpoint configs.
    Parameter:

    • api_key : API Key
    • api_name: Name for endpoint
    • api_endpoint: Type of endpoint ( can be azure, dev_quan, dev_full, prod)
    • host_name_port: Host and Port Inforation
    • use_pil: Activate Personal Identifier Information Limit Protection (Boolean)
    • protocol: HTTP/ HTTPS
    • api_type: Subroute if needed
    • use_pii: Whether current endpoint need Personal Identifier Information Limit Protection
    • log_key: Auth Key to use the Application
  • current_active() Check current endpoint active

  • add_endpoint(api_name,protocol,host_name_port,api_endpoint,api_key,use_pil=False) Add a new endpoint.
    Parameter:

    • api_key : API Key
    • api_name: Name for endpoint
    • api_endpoint: Type of endpoint ( can be azure, dev_quan, dev_full, prod)
    • host_name_port: Host and Port Inforation
    • use_pii: Activate Personal Identifier Information Limit Protection (Boolean)
    • protocol: HTTP/ HTTPS
    • use_pil: Whether current endpoint need Personal Identifier Information Limit Protection
  • list_endpoint() List out all endpoints in the endpoint management manager

  • set_endpoint(name) Set target endpoint to active
    Parameter:

    • name : Target endpoint's name
  • remove_endpoint(name) Delete endpoint by name
    Parameter:

    • name : Target endpoint's name
  • current_pii() Check current Personal Identifier Information Protection activation status

  • switch_pii() Switch current Personal Identifier Information Protection activation status

  • list_models() List out models available

  • initalise_pii() Download and intialise PII Protection.
    Note: This does not activate PII but initialise dependencies

  • health() Check health of current endpoint

  • create_embedding(file_path) Create embeddings by sending files to the API.
    Parameter:

    • file_path: Path to file
  • generate_text_full(query="", context="", use_file=0, model="", chat_history=[], max_new_tokens: int = 200, temperature: float = 0, top_k: int = -1, frequency_penalty: int = 0, repetition_penalty: int = 1, presence_penalty: float = 0, fetch_k=100000, select_k=4, api_version='2023-05-15', guardrail={'jailbreak': False, 'moderation': False}, custom_guardrail=None)
    Generate text using LLM endpoint. Note: Some parameter of the endpoint is endpoint-specific.
    Parameter:

    • query: a string of your prompt
    • use_file: Whether to take file to context in generation. Only applies to dev_full and dev_quan. Need to create_embedding before use.
    • model: a string on the model to use. You can use list_models to check for model available.
    • chat_history: an array of chat history between user and bot. Only applies to dev_full and dev_quan. (Beta)
    • max_new_token: maximum new token to generate. Must be integer.
    • temperature: Float that controls the randomness of the sampling. Lower values make the model more deterministic, while higher values make the model more random. Zero means greedy sampling.
    • top_k: Integer that controls the number of top tokens to consider.
    • frequency_penalty: Float that penalizes new tokens based on their frequency in the generated text so far.
    • repetition_penalty: Float that penalizes new tokens based on whether they appear in the prompt and the generated text so far.
    • presence_penalty: Float that penalizes new tokens based on whether they appear in the generated text so far
    • fetch_k: Use for document retrival. Include how many element in searching. Only applies when use_file is 1
    • select k: Use to select number of document for document retrieval. Only applies when use_file is 1
    • api_version: Only applies for azure endpoint
    • guardrail: Whether to use the default jailbreak guardrail and moderation guardrail
    • custom_guardrail: Path to custom guardrail .yaml file. The format can be found in sample.yaml
  • evaluate_parameter(config) Carry out grid search for parameter
    Parameter:

    • config: A dict. The dict must contain model and query. Parameter to grid search must be a list.
      • model: a string of model
      • query: a string of query
      • **other parameter (eg: "temperature":list(np.arange(0,2,0.5))
  • decrypt_hash(encrypted_data) Decret the configuration from experiment id. Parameter:

    • encrypted_data: a string of id

🔥 Quickstart

from aiaas_falcon import Falcon
model=Falcon(api_name="azure_1",protocol='https',host_name_port='example.com',api_key='API_KEY',api_endpoint='azure',log_key="KEY")
model.list_models()
model.generate_text_full(query="Hello, introduce yourself",model='gpt-35-turbo-0613-vanilla',api_version='2023-05-15')

Conclusion

AIaaS_Falcon library simplifies interactions with the LLM API's, providing a straightforward way to perform various operations such as listing models, creating embeddings, and generating text.

Authors

Google Colab

Badges

MIT License

Metadata

Release files for aiaas-falcon 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aiaas-falcon 0.2.2
File Size Uploaded
aiaas_falcon-0.2.2.tar.gz 5.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aiaas-falcon 0.2.2
File Interpreter ABI Platform
aiaas_falcon-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 11.8 kB

Release files / aiaas_falcon-0.2.2.tar.gz

Download URL aiaas_falcon-0.2.2.tar.gz
Size 5.6 kB
Tags Source
SHA-256 checksum
How to use checksums
5bd74805c884de48d93c8aa4ef0d0831daffac9888a62309c358f3c20988c06b
BLAKE2b-256 checksum
How to use checksums
e003a1476698ce328157bbe6ee5a48d4aa0b09c2be24e7a79a172ec8d7541bc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.8.8 Darwin/23.0.0

Release files / aiaas_falcon-0.2.2-py3-none-any.whl

Download URL aiaas_falcon-0.2.2-py3-none-any.whl
Size 6.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2e9a4f2db99b39e99f70f70e1673757f443398da7b1b04139d72b92267c240be
BLAKE2b-256 checksum
How to use checksums
4650ddc2eb44982c37d3ee21e32da0f89bff76a1214c69668dfc3882dab5f8ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.6.1 CPython/3.8.8 Darwin/23.0.0

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page