Wat zijn Amazon Nova-modellen?
De Nova-modellen van Amazon zijn langverwachte basismodellen die toegankelijk zijn via de Amazon Bedrock-service. Ze zijn ontworpen voor uiteenlopende toepassingen, waaronder snelle inferentie tegen lage kosten, multimedia-inzicht en creatieve contentgeneratie. Laten we elk model verkennen.
Amazon Nova Micro
Het snelste model van de familie, met de hoogste snelheid en lage rekenkosten. Micro is het best geschikt voor toepassingen die snelle, alleen-tekstgeneratie vereisen, met een inferentiesnelheid van 200 tokens per seconde.
Enkele van Micro's beste toepassingen zijn realtime-analyse, interactieve chatbots en tekstgeneratieservices met veel verkeer.

Nova Micro-benchmarks. (Bron: Amazon)
Amazon Nova Lite
Het kostenefficiënte multimodale lid van de Nova-familie; Lite biedt een goede balans tussen snelheid en hoge nauwkeurigheid over meerdere taken, vooral voor redeneer- en vertaalopdrachten vergeleken met tegenhangers zoals GPT-4o of Llama.
Het kan grote aantallen verzoeken efficiënt afhandelen en toch sterke nauwkeurigheid behouden. Lite kan een optimale keuze zijn voor toepassingen waar snelheid erg belangrijk is en een model nodig is dat meerdere modaliteiten aankan.

Nova Lite-benchmarks. (Bron: Amazon)
Amazon Nova Pro
Het meest geavanceerde model in de Nova-familie voor tekstverwerking, Nova Pro, biedt indrukwekkende nauwkeurigheid terwijl het relatief lage rekenkosten behoudt vergeleken met modellen met vergelijkbare mogelijkheden.
Volgens Amazon is Nova Pro goed geschikt voor toepassingen zoals videosamenvattingen, vraag-en-antwoord, wiskundig redeneren, softwareontwikkeling en AI-agents die meerstapsworkflows kunnen uitvoeren. Net als de Micro- en Lite-modellen ondersteunt Nova Pro momenteel fine-tuning.

Nova Pro-benchmarks. (Bron: Amazon)
Amazon Nova Premier
Het meest capabele multimodale model van de familie, dat begin 2025 nog moet verschijnen, zal naar verwachting een stap verder gaan dan het Pro-model.
Amazon Nova Canvas
Canvas is Nova’s oplossing voor beeldgeneratie. Het kan afbeeldingen van hoge kwaliteit genereren, controle bieden over kleurenschema en stijl, en functies leveren zoals inpainting, outpainting, afbeeldingen uitbreiden, stijltransfer en achtergrondverwijdering. Het model lijkt efficiënt voor het maken van marketingafbeeldingen, productmock-ups, enzovoort.
Amazon Nova Reel
Nova Reel is een videogeneratiemodel dat is ontworpen voor video’s van hoge kwaliteit die eenvoudig aan te passen zijn. Nova Reel stelt gebruikers in staat om de visuele stijl, timing en camerabeweging in video’s te creëren en te sturen. Reel heeft, net als de andere Nova-modellen, ingebouwde veiligheidscontroles waarmee afgestemde contentgeneratie mogelijk is.
Toegang krijgen tot de Amazon Nova-modellen via de Amazon Bedrock Playground
Je kunt de Amazon Bedrock Playground gebruiken om meerdere modellen te testen en te vergelijken via een kant-en-klare gebruikersinterface.
Ik ga ervan uit dat je de Amazon CLI en Bedrock hebt geconfigureerd en klaar hebt staan. Zo niet, dan kun je mijn tutorial over AWS Multi-Agent Orchestrator raadplegen, waarin ik de stappen beschrijf om een omgeving op te zetten voor het gebruik van de modellen die door Bedrock-services worden geleverd. Daarnaast biedt de blogpost van Nils Durner stapsgewijze screenshots om je te begeleiden bij het instellen van Bedrock-services.

Amazon Bedrock Playground
Bij het vergelijken van de Nova Micro en Pro merkte ik dat het nauwkeurigheidsverschil tussen de twee modellen niet merkbaar is. Hoewel Micro meer dan twee keer zo snel is als Pro bij tekstgeneratie, geeft het voor de meeste reguliere use-cases voldoende antwoorden. Pro daarentegen neigt naar iets gedetailleerdere en langere reacties.
Toegang krijgen tot de Amazon Nova-modellen via de Amazon Bedrock API
Om de Nova-modellen via de API te gebruiken en ze in je code te integreren, zorg je er eerst voor dat je AWS-account, AWS CLI en toegang tot de modellen correct zijn ingesteld (de documentatie biedt hiervoor begeleiding).
Installeer vervolgens de bibliotheek boto3, AWS’s SDK voor Python, die je in staat stelt met hun modellen te werken.
pip install boto3
Je kunt programmeermatig met de modellen interageren met een script zoals hieronder:
import boto3
import json
client = boto3.client(service_name="bedrock-runtime")
messages = [
{"role": "user", "content": [{"text": "Write a short poem"}]},
]
model_response = client.converse(
modelId="us.amazon.nova-lite-v1:0",
messages=messages
)
print("\\n[Full Response]")
print(json.dumps(model_response, indent=2))
print("\\n[Response Content Text]")
print(model_response["output"]["message"]["content"][0]["text"])
Demoproject met Nova Micro en AWS Multi-Agent Orchestrator
We implementeren nu een demoproject om de agentische capaciteiten van Nova Micro te testen. We gebruiken het AWS Multi-Agent Orchestrator-framework om een vereenvoudigde Python-toepassing op te zetten die uit twee agents bestaat: Python Developer Agent en ML Expert Agent. Als je de orchestrator wilt opzetten, kun je deze AWS Multi-Agent Orchestrator-gids gebruiken.
We gebruiken ook Chainlit, een open-source Python-pakket, om een eenvoudige UI voor de toepassing te maken. Installeer om te beginnen de benodigde bibliotheken:
chainlit==1.2.0
multi_agent_orchestrator==0.0.18
We beginnen met het importeren van de benodigde bibliotheken:
import uuid
import chainlit as cl
from multi_agent_orchestrator.orchestrator import MultiAgentOrchestrator, OrchestratorConfig
from multi_agent_orchestrator.classifiers import BedrockClassifier, BedrockClassifierOptions
from multi_agent_orchestrator.agents import AgentResponse
from multi_agent_orchestrator.agents import BedrockLLMAgent, BedrockLLMAgentOptions, AgentCallbacks
from multi_agent_orchestrator.orchestrator import MultiAgentOrchestrator
from multi_agent_orchestrator.types import ConversationMessage
import asyncio
import chainlit as cl
Het framework gebruikt een Classifier om de beste agent voor een inkomend gebruikersverzoek te kiezen. We gebruiken “anthropic.claude-3-haiku-20240307-v1:0” als model voor onze Classifier.
class ChainlitAgentCallbacks(AgentCallbacks):
def on_llm_new_token(self, token: str) -> None:
asyncio.run(cl.user_session.get("current_msg").stream_token(token))
# Initialize the orchestrator
custom_bedrock_classifier = BedrockClassifier(BedrockClassifierOptions(
model_id='anthropic.claude-3-haiku-20240307-v1:0',
inference_config={
'maxTokens': 500,
'temperature': 0.7,
'topP': 0.9
}
))
orchestrator = MultiAgentOrchestrator(options=OrchestratorConfig(
LOG_AGENT_CHAT=True,
LOG_CLASSIFIER_CHAT=True,
LOG_CLASSIFIER_RAW_OUTPUT=True,
LOG_CLASSIFIER_OUTPUT=True,
LOG_EXECUTION_TIMES=True,
MAX_RETRIES=3,
USE_DEFAULT_AGENT_IF_NONE_IDENTIFIED=False,
MAX_MESSAGE_PAIRS_PER_AGENT=10,
),
classifier=custom_bedrock_classifier
)
Vervolgens definiëren we twee agents die worden aangestuurd door Nova Micro: één die optreedt als Python-ontwikkelaarsexpert en de andere als expert in machine learning.
def create_python_dev():
return BedrockLLMAgent(BedrockLLMAgentOptions(
name="Python Developer Agent",
streaming=True,
description="Experienced Python developer specialized in writing, debugging, and evaluating only Python code.",
model_id="amazon.nova-micro-v1:0",
callbacks=ChainlitAgentCallbacks()
))
def create_ml_expert():
return BedrockLLMAgent(BedrockLLMAgentOptions(
name="Machine Learning Expert",
streaming=True,
description="Expert in areas related to machine learning including deep learning, pytorch, tensorflow, scikit-learn, and large language models.",
model_id="amazon.nova-micro-v1:0",
callbacks=ChainlitAgentCallbacks()
))
# Add agents to the orchestrator
orchestrator.add_agent(create_python_dev())
orchestrator.add_agent(create_ml_expert())
Tot slot zetten we de hoofdbody van het script op voor de Chainlit-UI om de gebruikersverzoeken en agentantwoorden af te handelen.
@cl.on_chat_start
async def start():
cl.user_session.set("user_id", str(uuid.uuid4()))
cl.user_session.set("session_id", str(uuid.uuid4()))
cl.user_session.set("chat_history", [])
@cl.on_message
async def main(message: cl.Message):
user_id = cl.user_session.get("user_id")
session_id = cl.user_session.get("session_id")
msg = cl.Message(content="")
await msg.send() # Send the message immediately to start streaming
cl.user_session.set("current_msg", msg)
response:AgentResponse = await orchestrator.route_request(message.content, user_id, session_id, {})
# Handle non-streaming responses
if isinstance(response, AgentResponse) and response.streaming is False:
# Handle regular response
if isinstance(response.output, str):
await msg.stream_token(response.output)
elif isinstance(response.output, ConversationMessage):
await msg.stream_token(response.output.content[0].get('text'))
await msg.update()
if __name__ == "__main__":
cl.run()
Het resultaat is de Chainlit-UI, waarmee je in de praktijk en naar wens met de Nova-modellen kunt chatten.

Onze app uitvoeren op Chainlit
Modellen voor beeld- en videogeneratie zijn ook beschikbaar via de API. In de documentatie vind je scripts die laten zien hoe je ze gebruikt.
Conclusie
Amazon Nova-modellen vormen een sprong voorwaarts in het ecosysteem van basismodellen, met een combinatie van toonaangevende nauwkeurigheid, snelheid, kosteneffectiviteit en multimodale mogelijkheden. Naarmate de Amazon LLM-suite groeit met nieuwe producten, wordt het een krachtige keuze om betaalbare en schaalbare toepassingen te bouwen op AWS.
Of je nu agentische AI-toepassingen ontwikkelt, chatbots voor klantenservice maakt of als ontwikkelaar experimenteert, met de Nova-modellen experimenteren is de moeite waard. Het is ook nuttig om je kennis van AWS, Bedrock en de LLM-tools van Amazon te verdiepen.
In dit artikel hebben we de belangrijkste aspecten van deze modellen behandeld, hoe je ermee kunt experimenteren en hoe je een eenvoudige agentische AI-toepassing bouwt met de Nova-modellen.
Masterstudent Kunstmatige Intelligentie en AI-technisch schrijver. Ik deel inzichten over de nieuwste AI-technologie, maak ML-onderzoek toegankelijk en vereenvoudig complexe AI-onderwerpen die nodig zijn om jou voorop te houden.


Amazon heeft een nieuwe reeks geavanceerde basismodellen uitgebracht die ontworpen zijn voor grootschalig gebruik tegen lage kosten. Nova voegt zich nu bij Amazon's LLM-ecosysteem, is geïntegreerd met hun Amazon Bedrock-service en ondersteunt meerdere modaliteiten zoals tekst-, beeld- en videogeneratie.
In deze blogpost geef ik een overzicht van de nieuwe Amazon Nova-modellen, leg ik uit hoe je er via de Bedrock-service toegang toe krijgt, licht ik de mogelijkheden en voordelen van elk model uit en laat ik zien hoe je ze in de praktijk gebruikt, inclusief integratie in een multi-agenttoepassing.