Quick Start Guide
This guide will help you get started with the PaiTIENT Secure Model Service quickly.
Prerequisites
Before you begin, make sure you have:
- Installed the SDK for your preferred language (Python or Node.js)
- Your API key and client ID from PaiTIENT
- If using the Python SDK: Python 3.8+
- If using the Node.js SDK: Node.js 14+
Setup
Python Setup
Set your environment variables:
bash
export PAITIENT_API_KEY=your-api-key
export PAITIENT_CLIENT_ID=your-client-idInitialize the client:
python
from paitient_secure_model import SecureModelClient
# Initialize from environment variables
client = SecureModelClient()
# Or specify credentials directly
client = SecureModelClient(
api_key="your-api-key",
client_id="your-client-id",
endpoint="https://api.paitient.ai" # Optional, defaults to production
)Node.js Setup
Set your environment variables:
bash
export PAITIENT_API_KEY=your-api-key
export PAITIENT_CLIENT_ID=your-client-idInitialize the client:
javascript
const { SecureModelClient } = require('paitient-secure-model');
// Initialize from environment variables
const client = new SecureModelClient();
// Or specify credentials directly
const client = new SecureModelClient({
apiKey: "your-api-key",
clientId: "your-client-id",
endpoint: "https://api.paitient.ai" // Optional, defaults to production
});Deploy Your First Model
Python Deployment
python
# Deploy the default model (ZimaBlueAI/HuatuoGPT-o1-8B)
deployment = client.deploy_model(
deployment_name="my-first-deployment",
use_gpu=True # Set to False for CPU-only deployment
)
# Store the deployment ID for later use
deployment_id = deployment.id
print(f"Deployment ID: {deployment_id}")
# Check deployment status
status = client.get_deployment_status(deployment_id)
print(f"Deployment status: {status.status}")
# Wait for deployment to complete (this may take 5-10 minutes)
import time
while status.status != "DEPLOYED":
if status.status == "FAILED":
print(f"Deployment failed: {status.error}")
break
print(f"Waiting for deployment... Current status: {status.status}")
time.sleep(30)
status = client.get_deployment_status(deployment_id)
if status.status == "DEPLOYED":
print("Deployment complete! Ready to generate text.")Node.js Deployment
javascript
async function deployModel() {
try {
// Deploy the default model (ZimaBlueAI/HuatuoGPT-o1-8B)
const deployment = await client.deploy({
deploymentName: "my-first-deployment",
useGpu: true // Set to false for CPU-only deployment
});
// Store the deployment ID for later use
const deploymentId = deployment.id;
console.log(`Deployment ID: ${deploymentId}`);
// Check deployment status
let status = await client.getDeploymentStatus(deploymentId);
console.log(`Deployment status: ${status.status}`);
// Wait for deployment to complete (this may take 5-10 minutes)
while (status.status !== "DEPLOYED") {
if (status.status === "FAILED") {
console.log(`Deployment failed: ${status.error}`);
break;
}
console.log(`Waiting for deployment... Current status: ${status.status}`);
await new Promise(resolve => setTimeout(resolve, 30000));
status = await client.getDeploymentStatus(deploymentId);
}
if (status.status === "DEPLOYED") {
console.log("Deployment complete! Ready to generate text.");
}
} catch (error) {
console.error("Error deploying model:", error);
}
}
deployModel();Generate Text
Once your model is deployed, you can generate text:
Python Text Generation
python
# Generate text using your deployed model
result = client.generate(
deployment_id=deployment_id,
prompt="Explain how AI is used in healthcare while ensuring HIPAA compliance.",
max_tokens=500,
temperature=0.7
)
print("Generated text:")
print(result.text)
# Get token usage
print(f"Prompt tokens: {result.usage.prompt_tokens}")
print(f"Completion tokens: {result.usage.completion_tokens}")
print(f"Total tokens: {result.usage.total_tokens}")Node.js Text Generation
javascript
async function generateText(deploymentId) {
try {
// Generate text using your deployed model
const result = await client.generate({
deploymentId: deploymentId,
prompt: "Explain how AI is used in healthcare while ensuring HIPAA compliance.",
maxTokens: 500,
temperature: 0.7
});
console.log("Generated text:");
console.log(result.text);
// Get token usage
console.log(`Prompt tokens: ${result.usage.promptTokens}`);
console.log(`Completion tokens: ${result.usage.completionTokens}`);
console.log(`Total tokens: ${result.usage.totalTokens}`);
} catch (error) {
console.error("Error generating text:", error);
}
}
generateText("your-deployment-id");Using Streaming Responses
For long responses, streaming is recommended:
Python Streaming
python
# Stream text generation
for chunk in client.generate_stream(
deployment_id=deployment_id,
prompt="Write a detailed summary of HIPAA compliance requirements for AI systems.",
max_tokens=1000
):
print(chunk.text, end="", flush=True)Node.js Streaming
javascript
async function streamText(deploymentId) {
try {
// Stream text generation
const stream = await client.generateStream({
deploymentId: deploymentId,
prompt: "Write a detailed summary of HIPAA compliance requirements for AI systems.",
maxTokens: 1000
});
// Handle the stream
for await (const chunk of stream) {
process.stdout.write(chunk.text);
}
console.log(); // New line at the end
} catch (error) {
console.error("Error streaming text:", error);
}
}
streamText("your-deployment-id");Managing Deployments
Python Deployment Management
python
# List all deployments
deployments = client.list_deployments()
for deployment in deployments:
print(f"ID: {deployment.id}, Name: {deployment.name}, Status: {deployment.status}")
# Delete a deployment
client.delete_deployment(deployment_id)Node.js Deployment Management
javascript
async function manageDeployments() {
try {
// List all deployments
const deployments = await client.listDeployments();
deployments.forEach(deployment => {
console.log(`ID: ${deployment.id}, Name: ${deployment.name}, Status: ${deployment.status}`);
});
// Delete a deployment
await client.deleteDeployment("your-deployment-id");
console.log("Deployment deleted successfully");
} catch (error) {
console.error("Error managing deployments:", error);
}
}
manageDeployments();Using the CLI
For Node.js users, you can also use the command-line interface:
bash
# Install the CLI globally
npm install -g paitient-secure-model
# Deploy a model
secure-model deploy --name my-cli-deployment
# Generate text
secure-model generate --deployment-id your-deployment-id --prompt "Explain HIPAA compliance in healthcare AI."
# List deployments
secure-model status --all
# Delete a deployment
secure-model delete --deployment-id your-deployment-idNext Steps
Now that you've deployed your first model and generated text, you can:
- Explore the Python SDK in detail
- Learn about the Node.js SDK
- Understand secure deployments
- Learn about LoRA fine-tuning
- Set up custom deployment configurations