|
1 | | - |
2 | | -# Capability Supported |
3 | | - |
4 | | -Of course. Here is the table with the 4th column for "Bedrock API" added. |
5 | | - |
6 | | -| Feature | Gemini | Anthropic | AWS Bedrock API | Ollama | Azure OAI (redBus) | Bedrock+Anthropic | |
7 | | -| :--- | :--- | :--- | :--- | :--- | :--- | :--- | |
8 | | -| **Chat** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
9 | | -| **Tools/Function** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
10 | | -| **Chat Stream** | ✅ | ❌ | ✅ | ✅ | ✅ | ❌ | |
11 | | -| **Image (Input)** | ✅ (Multimodal models) | ❌ | ✅ (Via models like Claude 3) | ✅ | ❓ | ❌ (Claude 3 models) | |
12 | | -| **Image Gen (Output)** | ✅ | ❌ | ✅ (Via Titan, Stable Diffusion) | ❌ | ❓ | ❌ (Via other models like Titan Image Generator) | |
13 | | -| **Audio Streaming (Input)** | ✅ (Some APIs/integrations) | ❌ | ❌ (Via Amazon Transcribe) | ❌ | ❓ |❌ (Via services like Amazon Transcribe) | |
14 | | -| **Transcription** | ✅ (Some APIs/integrations) | ❌ | ❌ (Via Amazon Transcribe) | ❌ | ❓ | ❌ (Via Amazon Transcribe) | |
15 | | -| **Persistent session (MapDB)** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
16 | | -| **Agents as Tool/Function** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
17 | | -| **Interoperability (A2A)** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
18 | | -| **Interoperability (Tools/Functions)** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
19 | | -| **Interoperability (Agents as Tool/Function)** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
20 | | -| **Agent Workflow** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
21 | | -| **Parallel Agents** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
22 | | -| **Sequential Agents** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
23 | | -| **Agent Orchestration** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
24 | | -| **Hierarchical Task Decomposition** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
25 | | - |
26 | | - |
27 | | -# Core Differences |
28 | | - |
29 | | -## Persistent session storage added, |
30 | | - |
31 | | -| Store | Chat | Stream | Artifact | |
32 | | -| :--- | :--- | :--- | :--- | |
33 | | -| **MapDB** | ✅ | ✅ | ✅ | |
34 | | -| **MongoDB** | ✅ | ✅ | ❌ | |
35 | | -| **Postgres** | ✅ | ✅ | ✅ | |
36 | | - |
37 | | -### MapDbSessionService("map.db") |
38 | | - |
39 | | -``` |
40 | | - public BaseSessionService sessionService() { |
41 | | -
|
42 | | - try { |
43 | | - // TODO: Add logic to select service based on config (e.g., DB URL) |
44 | | - log.info("Using MapDbSessionService"); |
45 | | - return new MapDbSessionService("map.db"); |
46 | | - } catch (Exception ex) { |
47 | | - java.util.logging.Logger.getLogger(AdkWebServer.class.getName()).log(Level.SEVERE, null, ex); |
48 | | - } |
49 | | -
|
50 | | - // TODO: Add logic to select service based on config (e.g., DB URL) |
51 | | - log.info("Using InMemorySessionService"); |
52 | | - return new InMemorySessionService(); |
53 | | - } |
54 | | -``` |
55 | | - |
56 | | -## Ollama API Supported, |
57 | | - |
58 | | -### OllamaBaseLM("qwen3:0.6b") |
59 | | -``` |
60 | | - LlmAgent coordinator = LlmAgent.builder() |
61 | | - .name("Coordinator") |
62 | | - . model(new com.google.adk.models.OllamaBaseLM("qwen3:0.6b"))// |
63 | | - .instruction("You are an assistant. Delegate requests to appropriate agent") |
64 | | - .description("Main coordinator.") |
65 | | - .build(); |
66 | | -``` |
67 | | - |
68 | | -## Secondary Auth Over Azure API |
69 | | - |
70 | | -### RedbusADG("40") |
71 | | - |
72 | | -``` |
73 | | -LlmAgent.builder() |
74 | | - .name(NAME) |
75 | | - .model(new com.google.adk.models.OllamaBaseLM("qwen3:0.6b"))//.model(new RedbusADG("40")) |
76 | | - .description("Agent to calculate trigonometric functions (sine, cosine, tangent) for given angles.") // Updated description |
77 | | - .instruction( |
78 | | - "You are a helpful agent who can calculate trigonometric functions (sine, cosine, and" |
79 | | - + " tangent). Use the provided tools to perform these calculations." |
80 | | - + " When the user provides an angle, identify the value and the unit (degrees or radians)." |
81 | | - + " Call the appropriate tool based on the requested function (sin, cos, tan) and provide the angle value and unit." |
82 | | - + " Ensure the angle unit is explicitly passed to the tool as 'degrees' or 'radians'.") // Updated instruction |
83 | | - .tools( |
84 | | - // Register the new trigonometry tools |
85 | | - FunctionTool.create(TrigonometryAgent.class, "calculateSine"), |
86 | | - FunctionTool.create(TrigonometryAgent.class, "calculateCosine"), |
87 | | - FunctionTool.create(TrigonometryAgent.class, "calculateTangent") |
88 | | - // Removed FunctionTool.create for getCurrentTime and getWeather |
89 | | - ) |
90 | | - .build(); |
91 | | -``` |
92 | | - |
93 | | - |
94 | | - |
95 | 1 | # Agent Development Kit (ADK) for Java |
96 | 2 |
|
97 | 3 | [](LICENSE) |
@@ -144,13 +50,13 @@ If you're using Maven, add the following to your dependencies: |
144 | 50 | <dependency> |
145 | 51 | <groupId>com.google.adk</groupId> |
146 | 52 | <artifactId>google-adk</artifactId> |
147 | | - <version>1.2.0</version> |
| 53 | + <version>0.8.0</version> |
148 | 54 | </dependency> |
149 | 55 | <!-- Dev UI --> |
150 | 56 | <dependency> |
151 | 57 | <groupId>com.google.adk</groupId> |
152 | 58 | <artifactId>google-adk-dev</artifactId> |
153 | | - <version>1.2.0</version> |
| 59 | + <version>0.8.0</version> |
154 | 60 | </dependency> |
155 | 61 | ``` |
156 | 62 |
|
|
0 commit comments