Credit Risk Analysis
This example demonstrates a complete credit risk analysis workflow using the FAOS Python and TypeScript SDKs.
Python
from faos import FaosClient
client = FaosClient(api_key="faos_sk_your_key_here")
# Step 1: Analyze financial statements
analysis = client.agents.invoke(
"credit-risk-analyst",
{
"query": "Analyze Q1 2024 financial statements for Acme Corp",
"data": {
"revenue": 12500000,
"net_income": 1875000,
"total_debt": 5000000,
"total_assets": 25000000,
},
},
)
print(f"Risk Score: {analysis.result.get('risk_score')}")
print(f"Insights: {analysis.result.get('insights')}")
print(f"Recommendation: {analysis.result.get('recommendation')}")
# Step 2: Get detailed report via streaming
import asyncio
async def stream_report():
async for chunk in client.agents.stream(
"credit-risk-analyst",
{"query": "Generate detailed credit report for Acme Corp"}
):
if chunk.type == "text":
print(chunk.data, end="", flush=True)
asyncio.run(stream_report())
TypeScript
import { FaosClient } from '@faos/sdk';
interface CreditAnalysis {
riskScore: number;
insights: string[];
recommendation: 'approve' | 'review' | 'reject';
}
const client = new FaosClient({ apiKey: 'faos_sk_your_key_here' });
// Step 1: Typed analysis
const analysis = await client.agents.invoke<CreditAnalysis>(
'credit-risk-analyst',
{
query: 'Analyze Q1 2024 financial statements for Acme Corp',
data: {
revenue: 12_500_000,
netIncome: 1_875_000,
totalDebt: 5_000_000,
totalAssets: 25_000_000,
},
},
);
console.log(`Risk Score: ${analysis.result.riskScore}`);
console.log(`Recommendation: ${analysis.result.recommendation}`);
// Step 2: Stream detailed report
for await (const text of client.agents.streamText(
'credit-risk-analyst',
{ query: 'Generate detailed credit report for Acme Corp' },
)) {
process.stdout.write(text);
}