Build AI agents in India (LLM + tools + loops)
Build AI agents in India: LLM with function calling, tool loops, and ₹ rupee billing. See ₹ costs, model choice (Qwen or Claude), and 3-step setup.
Build AI agents in India (₹-native API)
AI agents combine an LLM, function calling (tools), and reasoning loops to complete multi-step tasks. Build a customer-support agent or sales bot—all billed in ₹ rupees on a GST invoice.
Here's the 3-step setup + real ₹ costs.
Why unoblox for agents
- Function calling: Claude and Qwen support tool calls natively
- ₹ billing: No international payments, GST invoice, input-tax-credit claimable
- One key, one endpoint: Manage all agent calls in rupees
- OpenAI-compatible: Works with LangChain agent loops
- Streaming: Real-time agent thinking for interactive apps
Recommended models
- Qwen3 Max: ₹120.95 input / ₹604.77 output per 1M tokens (fast reasoning, high-volume)
- Claude Sonnet: ₹201.6 input / ₹1,008 output per 1M tokens (superior reasoning, complex)
Step 1: Define your tools
An agent needs external tools to act (search APIs, DBs, email). Define as JSON schema.
tools = [
{
"type": "function",
"function": {
"name": "search_docs",
"description": "Search your knowledge base",
"parameters": {
"type": "object",
"properties": {"query": {"type": "string"}},
"required": ["query"]
}
}
},
{
"type": "function",
"function": {
"name": "send_email",
"description": "Send an email to a customer",
"parameters": {
"type": "object",
"properties": {
"to": {"type": "string"},
"subject": {"type": "string"},
"body": {"type": "string"}
},
"required": ["to", "subject", "body"]
}
}
}
]
Step 2: Call the LLM with function calling
The LLM receives tools and decides which to call.
from openai import OpenAI
client = OpenAI(
base_url="https://api.unoblox.ai/v1",
api_key="ub-gw-..."
)
messages = [{"role": "user", "content": "Customer asked about refunds. Check our policy and reply."}]
response = client.chat.completions.create(
model="qwen/qwen3-max",
messages=messages,
tools=tools,
tool_choice="auto"
)
Step 3: Loop until task completes
Execute the tool, feed the result back, and repeat.
while response.choices[0].finish_reason == "tool_calls":
for tool_call in response.choices[0].message.tool_calls:
if tool_call.function.name == "search_docs":
result = search_docs(tool_call.function.arguments["query"])
else:
result = send_email(**tool_call.function.arguments)
messages.append({"role": "assistant", "content": response.choices[0].message.content})
messages.append({"role": "user", "content": f"Result: {result}"})
response = client.chat.completions.create(
model="qwen/qwen3-max",
messages=messages,
tools=tools
)
Real ₹ cost: customer-support agent
Scenario:
- 100 support tickets/day
- 3 tool calls per ticket
- Avg: 200 input tokens, 150 output tokens per turn
Daily cost (Qwen3 Max):
- 300 turns × (200 input + 150 output) = 105k tokens
- Input: ₹7.26 | Output: ₹27.21
- Daily: ₹34.47 = ₹1,034/month
Daily cost (Claude Sonnet):
- Input: ₹12.10 | Output: ₹45.36
- Daily: ₹57.46 = ₹1,724/month
Qwen saves ₹690/month.
Common patterns
- Research agent: Search docs → synthesize → output
- Data analyst: Query DB → transform → visualize
- Sales agent: Lookup customer → check inventory → email quote
Frequently asked questions
Q: Tool calling vs RAG—what's the difference? Tool calling: LLM decides to call external functions. RAG: You retrieve docs before calling LLM. Agents are more flexible.
Q: Can an agent use 5+ tools? Yes. Define as many tools as needed. LLM picks the right ones per task.
Q: Does agent loop cost scale with tool calls? Yes. Each LLM turn costs tokens. Monitor to avoid runaway costs.
Q: How do I prevent infinite loops? Set max_iterations limit (e.g., 10). If agent doesn't finish, return "max iterations reached" error.
Q: Does LangChain work with unoblox? Yes. LangChain's AgentExecutor works as the LLM backend. Swap base_url and api_key.
Q: What if a tool call fails? Return error message as tool result. LLM learns and retries or pivots to another tool.
Get started in rupees → https://unoblox.ai/sign-in
Start building in rupees
Call every major model through one OpenAI-compatible endpoint, billed in ₹ on a GST invoice.