

# 代码示例
<a name="sonic-code-examples"></a>

这些代码示例有助于您快速开始使用 Amazon Nova 2 Sonic。您可以在 [Amazon Nova Sonic GitHub 示例](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic)页面中访问示例的完整列表。

## 入门示例
<a name="sonic-getting-started-examples"></a>

如需旨在帮助您开始使用 Amazon Nova 2 Sonic 的简单示例，请参阅以下实现方式：
+ [Amazon Nova 2 Sonic 基本实现（Python）](https://github.com/aws-samples/amazon-nova-samples/blob/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/console-python/nova_sonic_simple.py)：这是一种演示如何在双向流式 API 中构建事件的基本实现。此版本不支持插话功能（打断正在说话的助手），也未实现真正的双向通信。
+ [功能齐全的 Amazon Nova 2 Sonic 实现（Python）](https://github.com/aws-samples/amazon-nova-samples/blob/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/console-python/nova_sonic_tool_use.py)：这是一种功能齐全的实现，具有真正的双向通信和插话支持。此版本支持更自然的对话，用户可以打断正在说话的助手，类似于人类对话。
+ [Amazon Nova 2 Sonic 的工具使用（Python）](https://github.com/aws-samples/amazon-nova-samples/blob/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/console-python/nova_sonic_tool_use.py)：这是一种高级实现，通过“工具使用”示例扩展双向通信功能。此版本演示了 Amazon Nova 2 Sonic 如何与外部工具和 API 交互以提供增强功能。
+ [支持文本与混合输入的 Nova Sonic（Python）](https://github.com/aws-samples/amazon-nova-samples/blob/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/console-python/nova_sonic_with_text.py)：演示如何将文本作为 Amazon Nova 2 Sonic 输入的示例实现。
+ [Java WebSocket 实现（Java）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/websocket-java)：此示例实现了一个基于 WebSocket 的双向音频流应用程序，该应用程序与 Amazon Nova 2 Sonic 集成，可使用 Java 进行实时的语音转语音对话。
+ [NodeJS Websocket 实现（NodeJS）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/websocket-nodejs)：此示例实现了一个基于 WebSocket 的双向音频流应用程序，该应用程序与 Amazon Nova 2 Sonic 集成，可使用 NodeJS 进行实时的语音转语音对话。
+ [NodeJS Websocket 实现（C\$1）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/sample-codes/websocket-dotnet)：此示例实现了一个基于 WebSocket 的双向音频流应用程序，该应用程序与 Amazon Nova 2 Sonic 集成，可使用 .NET 进行实时的语音转语音对话。

## 高级应用场景
<a name="sonic-advanced-examples"></a>

有关演示更复杂应用场景的高级示例，请参阅以下实现：
+ [Amazon Bedrock 知识库实现（NodeJS）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/bedrock-knowledge-base)：此示例演示了如何使用 NodeJS 将 Amazon Nova 2 Sonic 与 Amazon Bedrock 知识库集成，从而构建智能对话应用程序。
+ [聊天记录管理（Python）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/chat-history-logger)：此示例包含一个聊天记录日志记录系统，该系统使用 Python 捕获并保留用户与 Amazon Nova 2 Sonic 之间的所有交互。
+ [酒店预订取消（NodeJS）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/customer-service/hotel-cancellation-websocket)：此示例演示了 Amazon Nova 2 Sonic 模型的实际客户服务使用案例，即使用 NodeJS 实现酒店预订取消系统。
+ [LangChain 知识库集成（Python）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/langchain-knowledge-base)：此实现演示了如何使用 Python 将 Amazon Nova 2 Sonic 的语音转语音功能与 LangChain 支持的知识库集成，从而提供增强的对话体验。
+ [对话恢复（NodeJS）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/resume-conversation)：此示例演示了如何使用 Amazon Nova 2 Sonic 实现对话恢复功能。该应用程序以酒店预订取消场景为背景，展示了如何在会话之间保持对话状态，让用户能够借助 NodeJS 无缝继续此前被中断的交互。
+ [Nova 2 Sonic Speaks First（NodeJS）：](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/nova-sonic-speaks-first)此示例演示了 Amazon Nova 2 Sonic 如何主动发起对话。
+ [会话延续（Python）](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/repeatable-patterns/session-continuation/console-python)：此示例演示了如何通过实现无缝会话切换，让 Amazon Nova 2 Sonic 支持无长度限制的对话。该应用程序会在后台自动创建并切换到新会话，使对话可无限持续，不中断、不丢失上下文。

## 实践讲习会
<a name="sonic-workshop"></a>

我们还提供实践讲习会，指导您使用具有双向流式接口的 Amazon Nova 2 Sonic 构建语音聊天应用程序。您可以[访问讲习会](https://catalog.us-east-1.prod.workshops.aws/workshops/5238419f-1337-4e0f-8cd7-02239486c40d/en-US)，找到[完整代码示例](https://github.com/aws-samples/amazon-nova-samples/tree/main/speech-to-speech/amazon-nova-2-sonic/workshops)。