Skip to main content

Get Systems Prefect Blocks - Enterprise LLM and HTTP operations

Project description

get_systems - Get Systems Prefect Blocks

Enterprise-grade Prefect blocks for LLM operations and HTTP requests.

Features

LLM Module (get_systems.llm)

  • OpenAI & Azure OpenAI Support - Seamlessly switch between providers
  • Environment Variables - Automatic fallback to env vars
  • Retry Logic - Exponential backoff with jitter
  • Caching - Optional in-memory response caching
  • Safe Logging - No API key leaks
  • Flexible Parameters - Pass any OpenAI API parameter via **kwarget_systems
  • Function Calling - Full support for tools

HTTP Module (get_systems.http)

  • Multiple Auth Types - None, Basic, Token, Bearer
  • Async HTTP Client - Built on httpx
  • Prefect Integration - First-class block support

Installation

Install Everything (Recommended)

pip install "get_systems[all]"

Install Specific Modules

Install only what you need:

# For LLM operations only
pip install "get_systems[llm]"

# For HTTP operations only  
pip install "get_systems[http]"

# Install both
pip install "get_systems[llm,http]"

From Azure Artifacts

# All modules
pip install "get_systems[all]" --extra-index-url https://pkget_systems.dev.azure.com/get-systems/_packaging/get-systems/pypi/simple/

# Specific modules
pip install "get_systems[llm]" --extra-index-url https://pkget_systems.dev.azure.com/get-systems/_packaging/get-systems/pypi/simple/
pip install "get_systems[http]" --extra-index-url https://pkget_systems.dev.azure.com/get-systems/_packaging/get-systems/pypi/simple/

What Gets Installed

Installation Dependencies
pip install get_systems prefect, pydantic (base only)
pip install "get_systems[llm]" Base + openai
pip install "get_systems[http]" Base + httpx
pip install "get_systems[all]" Base + openai + httpx

Quick Start

LLM Operations

from get_systems.llm import GptCompletionBlock, GptAuth, LlmRuntime
from prefect import flow

# Configure auth
auth = GptAuth(
    api_key="sk-...",
    model="gpt-4o-mini",
    is_azure=False
)

# Create completion block
block = GptCompletionBlock(
    auth=auth,
    prompt="What is Prefect?",
    temperature=0.7
)

@flow
async def my_llm_flow():
    result = await block.run()
    print(result.content)

HTTP Operations

from get_systems.http import HttpAuth, HttpBlock
from prefect import flow

# Configure HTTP auth
auth = HttpAuth(
    auth_type="bearer",
    token="your-token",
    base_url="https://api.example.com"
)

# Create HTTP block
http_block = HttpBlock(auth=auth)

@flow
async def my_http_flow():
    response = await http_block.request("GET", "/users")
    print(response.json())

Register Blocks in Prefect

# Register all blocks
prefect block register -m get_systems.llm.gpt_blocks
prefect block register -m get_systems.http.http_block

# View registered blocks
prefect block ls

Import Styles

All import styles are supported:

# Submodule imports
from get_systems.llm import GptCompletionBlock, GptAuth
from get_systems.http import HttpAuth, HttpBlock

# Direct module imports
from get_systems.llm.gpt_blocks import GptCompletionBlock
from get_systems.http.http_block import HttpAuth

# Package-level imports
from get_systems import GptCompletionBlock, HttpAuth

Environment Variables

OpenAI Configuration:

OPENAI_API_KEY=sk-...
OPENAI_MODEL=gpt-4o-mini
OPENAI_BASE_URL=https://api.openai.com/v1  # optional

Azure OpenAI Configuration:

OPENAI_API_KEY=your-azure-key
OPENAI_BASE_URL=https://your-resource.openai.azure.com
OPENAI_MODEL=your-deployment-name
OPENAI_API_VERSION=2024-02-15-preview
OPENAI_IS_AZURE=true

Documentation

  • docs/QUICKSTART-get_systems.md - Quick start and usage examples
  • docs/MIGRATION.md - Migration guide from old packages
  • LLM Module: Full OpenAI/Azure OpenAI integration with enterprise features
  • HTTP Module: Flexible HTTP client with multiple authentication types
  • Prefect Integration: Native Prefect block support for both modules

License

Proprietary - Get Systems

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

get_systems-0.2.21.tar.gz (37.1 kB view details)

Uploaded Source

Built Distribution

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

get_systems-0.2.21-py3-none-any.whl (31.6 kB view details)

Uploaded Python 3

File details

Details for the file get_systems-0.2.21.tar.gz.

File metadata

  • Download URL: get_systems-0.2.21.tar.gz
  • Upload date:
  • Size: 37.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for get_systems-0.2.21.tar.gz
Algorithm Hash digest
SHA256 33d7f9185774ff7e27b5c733fa44f86bc4f013801ecbc14517ac4416d863d0be
MD5 211488b04dbeb46f1e46e78ab8ea1dca
BLAKE2b-256 91987224a16061fc20cfce682e1c8add4efbbae0e626336ba9c805a6f2a7834b

See more details on using hashes here.

File details

Details for the file get_systems-0.2.21-py3-none-any.whl.

File metadata

  • Download URL: get_systems-0.2.21-py3-none-any.whl
  • Upload date:
  • Size: 31.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for get_systems-0.2.21-py3-none-any.whl
Algorithm Hash digest
SHA256 c557e00e1f3b5ab048c978be7a33cf4cca03f2408f8bd5c5930873ea73b8621a
MD5 724a42521193e3b34fb692d311cf8b49
BLAKE2b-256 5b236e313ebd097c66964a3e360508759a42991a32c1b6de1fea02b09a96f05c

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