Editing
Portal:Artificial Intelligence
(section)
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Unified LLM interfaces and provider abstraction === As more AI providers appeared, Perl developers began facing the same problem as developers in other languages: every LLM provider has slightly different APIs, request formats, streaming behavior, tool-calling conventions, model names, pricing, and response structures. A modern AI interface therefore needs to abstract over providers. `Langertha` is a modern Perl attempt in this direction. Its documentation describes it as a unified Perl interface for interacting with various LLM APIs, abstracting provider-specific differences across OpenAI, Anthropic Claude, Ollama, Groq, Mistral, and other providers.<ref>MetaCPAN, “Langertha,” https://metacpan.org/pod/Langertha, accessed July 3, 2026.</ref> The same documentation describes features including chat, streaming, embeddings, transcription, image generation, MCP tool calling, response metadata, token usage, model information, timing, and async support.<ref>MetaCPAN, “Langertha,” https://metacpan.org/pod/Langertha, accessed July 3, 2026.</ref> The Langertha distribution lists engines for many providers and runtimes, including Anthropic, Gemini, Groq, Hugging Face, LM Studio, llama.cpp, Mistral, Ollama, OpenAI, OpenRouter, Perplexity, Replicate, SGLang, vLLM, and Whisper-compatible transcription servers.<ref>MetaCPAN, “Langertha distribution,” https://metacpan.org/dist/Langertha, accessed July 3, 2026.</ref> This is the modern Perl AI pattern: rather than treating one provider as permanent, Perl code can be written against a common layer and then route work to local models, cloud models, OpenAI-compatible endpoints, Anthropic-style endpoints, or specialized inference services.
Summary:
Please note that all contributions to Perl Guilds - Getting Medieval with Perl may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Perl Guilds - Getting Medieval with Perl:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
Edit source
View history
More
Search
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Tools
What links here
Related changes
Page information