Blog
Engineering
AI
4
minutes

GenAI: A New Paradigm for Problem-Solving with Undefined Inputs

Traditional programming is built around well-defined inputs and deterministic logic. Developers write functions that take structured inputs, apply a predefined set of operations, and return a structured output. This model works well when the input space is predictable, but it struggles with problems where inputs are ambiguous, unstructured, or constantly evolving.
Romaric Philogène
CEO & Co-founder
Summary
Twitter icon
linkedin icon

Generative AI introduces a new programming paradigm where the input does not need to be explicitly defined. Instead of crafting rigid logic to process an input, we define the expected output format and use a prompt as a functional description of how to transform the input. The system then dynamically generates the best possible response, validated against the expected structure.

This approach unlocks solutions to problems that were previously difficult to model with traditional programming techniques. Let's explore this concept with examples and discuss its implications for software development.

The Traditional Paradigm: Defined Inputs, Defined Outputs

In classical programming, a function is designed with a strict contract:

def extract_product_price(text: str) -> float:
"""Extracts the price of a product from a structured input string."""
match = re.search(r"\$\d+\.\d{2}", text)
return float(match.group(0)[1:]) if match else 0.0

print(extract_product_price("The price of the item is $12.99")) # Output: 12.99

Here, the function expects a structured input where the price follows a known pattern (e.g., $12.99). If the format changes significantly, this function will fail.

But what if we need to extract prices from unstructured text? Imagine dealing with various formats:

  • "The cost is twelve dollars and ninety-nine cents."
  • "€10,99 in Europe."
  • "Price: 15 bucks."

Writing rules to cover all these variations would be tedious and fragile. This is where GenAI shines.

The GenAI Paradigm: Undefined Inputs, Standardized Outputs

Instead of crafting complex regex rules, we can define the expected output structure and let a large language model (LLM) handle the extraction dynamically.

import openai

def extract_price(text: str) -> float:
"""Uses GenAI to extract a price from any text format."""
prompt = f"""
Extract the price from the following text and return only a JSON object:
{{"price": number}}.

Text: {text}
"""
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[{"role": "user", "content": prompt}],
temperature=0
)
output = json.loads(response["choices"][0]["message"]["content"])
return output["price"]

print(extract_price("The cost is twelve dollars and ninety-nine cents.")) # Output: 12.99

Key Differences:

  1. Unstructured Input Handling: The input can be a sentence, a phrase, or a mix of languages.
  2. Declarative Function Logic: The function doesn’t "parse" the text directly—it describes what it expects.
  3. Format Validation: The AI must return a valid JSON object, ensuring standardization.

Solving Previously Hard Problems

Many real-world problems were difficult to solve with traditional programming because they required extensive rule-based processing. GenAI makes these problems tractable:

1. Extracting Information from Free-Form Text

  • Traditional approach: Regex, NLP pipelines, entity recognition models.
  • GenAI approach: Prompt-based extraction with standardized output validation.

Example: Extracting Job Experience from a Resume

def extract_experience(resume_text: str) -> list:
prompt = f"""
Extract work experience from the given resume and return a JSON list of jobs.
Each job should contain: "company", "position", "years_experience".

Resume: {resume_text}
"""
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[{"role": "user", "content": prompt}],
temperature=0
)
return json.loads(response["choices"][0]["message"]["content"])

This works across various resume formats without predefined parsing logic.

2. Generating SQL Queries from Natural Language

  • Traditional approach: Manual query writing or limited keyword-based generation.
  • GenAI approach: Convert text descriptions into valid SQL queries.
def generate_sql(query: str) -> str:
prompt = f"""
Convert the following request into a SQL query. Assume the database schema
is for an e-commerce platform with tables: users(id, name), orders(id, user_id, total_price),
products(id, name, price).

Request: "{query}"

SQL Query:
"""
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[{"role": "user", "content": prompt}],
temperature=0
)
return response["choices"][0]["message"]["content"]

print(generate_sql("Get the top 5 customers who spent the most."))

Without writing a SQL parser, we can generate structured queries dynamically.

GenAI as a New Tool in the Developer Toolbox

GenAI is not replacing traditional programming, but it adds a new paradigm that complements deterministic logic. Instead of handling every possible input variation manually, developers can define the desired output format and let AI handle input variability.

Where This Paradigm Works Best

  • When inputs are unstructured: Emails, conversations, scanned documents, free-form text.
  • When transformation logic is flexible: Summarization, language translation, query generation.
  • When the output format is well-defined: JSON responses, function calls, structured data extraction.

Where Traditional Programming is Still Better

  • Highly deterministic workflows: Banking transactions, safety-critical systems, low-level computation.
  • Performance-sensitive applications: High-speed processing that requires low latency.
  • Strict business rules: Tax calculations, legal compliance rules that must be explicitly defined.

Conclusion

GenAI shifts how we approach certain classes of problems by allowing unstructured inputs while maintaining structured outputs. It doesn't replace traditional programming but expands what’s possible, making previously hard problems solvable with simple prompts.

For developers, this means embracing a hybrid approach:

  • Use traditional programming for well-defined logic.
  • Use GenAI where inputs are unpredictable, but outputs can be standardized.

This is a powerful addition to the developer’s toolbox - one that should be embraced to build smarter, more adaptive software.

Checkout the articles below to see how we use AI for real-world use cases at Qovery 👇🏼
Share on :
Twitter icon
linkedin icon
Ready to rethink the way you do DevOps?
Qovery is a DevOps automation platform that enables organizations to deliver faster and focus on creating great products.
Book a demo

Suggested articles

Internal Developer Platform
DevOps
 minutes
PaaS vs. DIY IDP: The Fastest Path to a Self-Service Cloud

Building an Internal Developer Platform (IDP) from scratch seems cheaper, but the maintenance costs add up. Discover why a modern PaaS on your own infrastructure is the faster, smarter path to a self-service cloud.

Mélanie Dallé
Senior Marketing Manager
Heroku
15
 minutes
Top 10 Heroku Alternatives in 2026: When Simplicity Hits the Scaling Wall

Escape rising Heroku costs & outages. Compare top alternatives that deliver PaaS simplicity on your own cloud and scale without limits.

Mélanie Dallé
Senior Marketing Manager
DevOps
Developer Experience
9
 minutes
Top 10 DevOps Automation Tools in 2026 to Streamline Mid-Market Infrastructure

Scale your engineering organization without the headcount hit. Compare the top 10 DevOps automation tools for mid-market teams, from IaC leaders like Terraform to unified platforms like Qovery.

Mélanie Dallé
Senior Marketing Manager
Kubernetes
DevOps
 minutes
Best CI/CD tools for Kubernetes: Streamlining the cluster

Static delivery pipelines are becoming a bottleneck. The best CI/CD tools for Kubernetes are those that move beyond simple code builds to provide total environment orchestration and developer self-service.

Mélanie Dallé
Senior Marketing Manager
DevOps
Cloud
 minutes
Top 10 vSphere alternatives for modern hybrid cloud orchestration

The Broadcom acquisition of VMware has sent shockwaves through the enterprise world, with many organizations facing license cost increases of 2x to 5x. If you are looking to escape rising TCO and rigid subscription bundles, these are the top vSphere alternatives for a modern hybrid cloud.

Mélanie Dallé
Senior Marketing Manager
DevOps
Heroku
 minutes
Top 10 Heroku Postgres competitors for production databases

Escape rising Heroku costs and rigid limitations. Discover the best Heroku Postgres competitors that offer high availability, global scaling, and the flexibility to deploy on your own terms.

Mélanie Dallé
Senior Marketing Manager
DevOps
Kubernetes
Heroku
 minutes
Top 10 GitLab alternatives for DevOps teams

Is GitLab bloat slowing down your engineering team? Compare the top 10 GitLab alternatives for, from GitHub to lightweight automation platforms like Qovery. Escape the monolith and reclaim your velocity.

Mélanie Dallé
Senior Marketing Manager
DevOps
Kubernetes
Heroku
 minutes
Heroku vs. Kubernetes: A comprehensive comparison

Is the "Heroku Tax" draining your budget? Compare Heroku vs. Kubernetes in 2026. Learn how to solve complex orchestration challenges, like queue-based autoscaling and microservice sprawl, without the DevOps toil.

Mélanie Dallé
Senior Marketing Manager

It’s time to rethink
the way you do DevOps

Turn DevOps into your strategic advantage with Qovery, automating the heavy lifting while you stay in control.