amd-gaia 0.15.0__tar.gz → 0.15.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/LICENSE.md +20 -20
  2. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/MANIFEST.in +14 -14
  3. {amd_gaia-0.15.0/src/amd_gaia.egg-info → amd_gaia-0.15.2}/PKG-INFO +222 -223
  4. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/README.md +122 -123
  5. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/pyproject.toml +62 -62
  6. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/setup.cfg +4 -4
  7. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/setup.py +183 -179
  8. {amd_gaia-0.15.0 → amd_gaia-0.15.2/src/amd_gaia.egg-info}/PKG-INFO +222 -223
  9. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/amd_gaia.egg-info/SOURCES.txt +18 -2
  10. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/amd_gaia.egg-info/entry_points.txt +1 -0
  11. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/__init__.py +29 -29
  12. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/__init__.py +19 -19
  13. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/__init__.py +9 -9
  14. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/agent.py +2132 -2177
  15. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/api_agent.py +119 -120
  16. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/console.py +1967 -1841
  17. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/errors.py +237 -237
  18. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/mcp_agent.py +86 -86
  19. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/base/tools.py +88 -83
  20. amd_gaia-0.15.2/src/gaia/agents/blender/__init__.py +7 -0
  21. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/agent.py +553 -556
  22. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/agent_simple.py +133 -135
  23. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/app.py +211 -211
  24. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/app_simple.py +41 -41
  25. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/core/__init__.py +16 -16
  26. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/core/materials.py +506 -506
  27. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/core/objects.py +316 -316
  28. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/core/rendering.py +225 -225
  29. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/core/scene.py +220 -220
  30. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/blender/core/view.py +146 -146
  31. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/__init__.py +9 -9
  32. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/agent.py +809 -835
  33. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/app.py +1065 -1058
  34. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/session.py +508 -508
  35. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/tools/__init__.py +15 -15
  36. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/tools/file_tools.py +96 -96
  37. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/tools/rag_tools.py +1744 -1729
  38. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/chat/tools/shell_tools.py +437 -436
  39. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/__init__.py +7 -7
  40. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/agent.py +549 -549
  41. amd_gaia-0.15.2/src/gaia/agents/code/cli.py +377 -0
  42. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/models.py +135 -135
  43. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/__init__.py +24 -24
  44. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/checklist_executor.py +1763 -1763
  45. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/checklist_generator.py +713 -713
  46. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/factories/__init__.py +9 -9
  47. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/factories/base.py +63 -63
  48. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/factories/nextjs_factory.py +118 -118
  49. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/factories/python_factory.py +106 -106
  50. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/orchestrator.py +841 -841
  51. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/project_analyzer.py +391 -391
  52. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/steps/__init__.py +67 -67
  53. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/steps/base.py +188 -188
  54. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/steps/error_handler.py +314 -314
  55. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/steps/nextjs.py +828 -828
  56. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/steps/python.py +307 -307
  57. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/template_catalog.py +469 -469
  58. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/workflows/__init__.py +14 -14
  59. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/workflows/base.py +80 -80
  60. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/workflows/nextjs.py +186 -186
  61. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/orchestration/workflows/python.py +94 -94
  62. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/prompts/__init__.py +11 -11
  63. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/prompts/base_prompt.py +77 -77
  64. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/prompts/code_patterns.py +2034 -2036
  65. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/prompts/nextjs_prompt.py +40 -40
  66. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/prompts/python_prompt.py +109 -109
  67. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/schema_inference.py +365 -365
  68. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/system_prompt.py +41 -41
  69. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/__init__.py +42 -42
  70. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/cli_tools.py +1138 -1138
  71. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/code_formatting.py +319 -319
  72. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/code_tools.py +769 -769
  73. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/error_fixing.py +1347 -1347
  74. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/external_tools.py +180 -180
  75. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/file_io.py +845 -845
  76. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/prisma_tools.py +190 -190
  77. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/project_management.py +1016 -1016
  78. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/testing.py +321 -321
  79. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/typescript_tools.py +122 -122
  80. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/validation_parsing.py +461 -461
  81. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/validation_tools.py +806 -806
  82. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/tools/web_dev_tools.py +1758 -1758
  83. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/validators/__init__.py +16 -16
  84. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/validators/antipattern_checker.py +241 -241
  85. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/validators/ast_analyzer.py +197 -197
  86. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/validators/requirements_validator.py +145 -145
  87. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/code/validators/syntax_validator.py +171 -171
  88. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/docker/__init__.py +7 -7
  89. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/docker/agent.py +643 -642
  90. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/emr/__init__.py +8 -8
  91. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/emr/agent.py +1504 -1506
  92. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/emr/cli.py +1322 -1322
  93. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/emr/constants.py +475 -475
  94. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/emr/dashboard/__init__.py +4 -4
  95. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/emr/dashboard/server.py +1972 -1974
  96. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/jira/__init__.py +11 -11
  97. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/jira/agent.py +894 -894
  98. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/jira/jql_templates.py +299 -299
  99. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/routing/__init__.py +7 -7
  100. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/routing/agent.py +567 -570
  101. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/agents/routing/system_prompt.py +75 -75
  102. amd_gaia-0.15.2/src/gaia/agents/summarize/__init__.py +11 -0
  103. amd_gaia-0.15.2/src/gaia/agents/summarize/agent.py +885 -0
  104. amd_gaia-0.15.2/src/gaia/agents/summarize/prompts.py +129 -0
  105. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/api/__init__.py +23 -23
  106. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/api/agent_registry.py +238 -238
  107. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/api/app.py +305 -305
  108. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/api/openai_server.py +575 -575
  109. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/api/schemas.py +186 -186
  110. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/api/sse_handler.py +373 -373
  111. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/apps/__init__.py +4 -4
  112. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/apps/llm/__init__.py +6 -6
  113. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/apps/llm/app.py +184 -169
  114. amd_gaia-0.15.2/src/gaia/apps/summarize/app.py +116 -0
  115. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/apps/summarize/html_viewer.py +133 -133
  116. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/apps/summarize/pdf_formatter.py +284 -284
  117. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/audio/__init__.py +2 -2
  118. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/audio/audio_client.py +439 -439
  119. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/audio/audio_recorder.py +269 -269
  120. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/audio/kokoro_tts.py +599 -599
  121. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/audio/whisper_asr.py +432 -432
  122. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/chat/__init__.py +16 -16
  123. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/chat/app.py +428 -430
  124. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/chat/prompts.py +522 -522
  125. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/chat/sdk.py +1228 -1225
  126. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/cli.py +5659 -5632
  127. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/database/__init__.py +10 -10
  128. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/database/agent.py +176 -176
  129. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/database/mixin.py +290 -290
  130. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/database/testing.py +64 -64
  131. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/batch_experiment.py +2332 -2332
  132. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/claude.py +542 -542
  133. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/config.py +37 -37
  134. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/email_generator.py +512 -512
  135. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/eval.py +3179 -3179
  136. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/groundtruth.py +1130 -1130
  137. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/transcript_generator.py +582 -582
  138. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/README.md +167 -167
  139. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/package-lock.json +875 -875
  140. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/package.json +20 -20
  141. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/public/app.js +3402 -3402
  142. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/public/index.html +87 -87
  143. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/public/styles.css +3661 -3661
  144. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/server.js +415 -415
  145. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/eval/webapp/test-setup.js +72 -72
  146. amd_gaia-0.15.2/src/gaia/installer/__init__.py +23 -0
  147. amd_gaia-0.15.2/src/gaia/installer/init_command.py +1275 -0
  148. amd_gaia-0.15.2/src/gaia/installer/lemonade_installer.py +619 -0
  149. amd_gaia-0.15.2/src/gaia/llm/__init__.py +10 -0
  150. amd_gaia-0.15.2/src/gaia/llm/base_client.py +60 -0
  151. amd_gaia-0.15.2/src/gaia/llm/exceptions.py +12 -0
  152. amd_gaia-0.15.2/src/gaia/llm/factory.py +70 -0
  153. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/llm/lemonade_client.py +3421 -3221
  154. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/llm/lemonade_manager.py +294 -294
  155. amd_gaia-0.15.2/src/gaia/llm/providers/__init__.py +9 -0
  156. amd_gaia-0.15.2/src/gaia/llm/providers/claude.py +108 -0
  157. amd_gaia-0.15.2/src/gaia/llm/providers/lemonade.py +118 -0
  158. amd_gaia-0.15.2/src/gaia/llm/providers/openai_provider.py +79 -0
  159. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/llm/vlm_client.py +382 -382
  160. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/logger.py +189 -189
  161. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/agent_mcp_server.py +245 -245
  162. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/blender_mcp_client.py +138 -138
  163. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/blender_mcp_server.py +648 -648
  164. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/context7_cache.py +332 -332
  165. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/external_services.py +518 -518
  166. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/mcp_bridge.py +811 -550
  167. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/servers/__init__.py +6 -6
  168. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/mcp/servers/docker_mcp.py +83 -83
  169. amd_gaia-0.15.2/src/gaia/perf_analysis.py +361 -0
  170. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/rag/__init__.py +10 -10
  171. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/rag/app.py +293 -293
  172. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/rag/demo.py +304 -304
  173. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/rag/pdf_utils.py +235 -235
  174. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/rag/sdk.py +2194 -2194
  175. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/security.py +183 -163
  176. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/talk/app.py +287 -289
  177. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/talk/sdk.py +538 -538
  178. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/testing/__init__.py +87 -87
  179. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/testing/assertions.py +330 -330
  180. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/testing/fixtures.py +333 -333
  181. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/testing/mocks.py +493 -493
  182. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/util.py +46 -46
  183. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/utils/__init__.py +33 -33
  184. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/utils/file_watcher.py +675 -675
  185. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/utils/parsing.py +223 -223
  186. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/gaia/version.py +100 -100
  187. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_api.py +1134 -1134
  188. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_chat_agent.py +1111 -829
  189. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_chat_sdk.py +452 -452
  190. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_checklist_orchestration.py +1728 -1730
  191. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_code_agent.py +1093 -1093
  192. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_code_agent_mixins.py +431 -431
  193. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_eval.py +254 -254
  194. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_external_tools.py +352 -352
  195. amd_gaia-0.15.2/tests/test_hardware_advisor_agent.py +189 -0
  196. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_jira.py +3249 -3249
  197. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_lemonade_client.py +1920 -1751
  198. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_lemonade_embeddings.py +110 -110
  199. amd_gaia-0.15.2/tests/test_lemonade_health.py +62 -0
  200. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_rag.py +582 -582
  201. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_rag_integration.py +427 -427
  202. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_sdk.py +1706 -1701
  203. amd_gaia-0.15.2/tests/test_summarizer.py +896 -0
  204. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_typescript_tools.py +229 -231
  205. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/tests/test_vlm_integration.py +346 -346
  206. amd_gaia-0.15.0/src/gaia/agents/code/app.py +0 -266
  207. amd_gaia-0.15.0/src/gaia/apps/summarize/app.py +0 -633
  208. amd_gaia-0.15.0/src/gaia/llm/__init__.py +0 -2
  209. amd_gaia-0.15.0/src/gaia/llm/llm_client.py +0 -723
  210. amd_gaia-0.15.0/tests/test_summarizer.py +0 -421
  211. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/amd_gaia.egg-info/dependency_links.txt +0 -0
  212. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/amd_gaia.egg-info/requires.txt +0 -0
  213. {amd_gaia-0.15.0 → amd_gaia-0.15.2}/src/amd_gaia.egg-info/top_level.txt +0 -0
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (C) 2024-2025 ADVANCED MICRO DEVICES
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1
+ MIT License
2
+
3
+ Copyright (C) 2024-2025 ADVANCED MICRO DEVICES
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.
@@ -1,15 +1,15 @@
1
- # Copyright(C) 2025-2026 Advanced Micro Devices, Inc. All rights reserved.
2
- # SPDX-License-Identifier: MIT
3
-
4
- # Include all JSON files in the interface directory
5
- include src/gaia/interface/*.json
6
-
7
- # Include all files in the img directory
8
- include src/gaia/interface/img/*
9
-
10
- # Include license and readme
11
- include LICENSE
12
- include README.md
13
-
14
- # Include evaluation webapp files
1
+ # Copyright(C) 2025-2026 Advanced Micro Devices, Inc. All rights reserved.
2
+ # SPDX-License-Identifier: MIT
3
+
4
+ # Include all JSON files in the interface directory
5
+ include src/gaia/interface/*.json
6
+
7
+ # Include all files in the img directory
8
+ include src/gaia/interface/img/*
9
+
10
+ # Include license and readme
11
+ include LICENSE
12
+ include README.md
13
+
14
+ # Include evaluation webapp files
15
15
  recursive-include src/gaia/eval/webapp *
@@ -1,223 +1,222 @@
1
- Metadata-Version: 2.4
2
- Name: amd-gaia
3
- Version: 0.15.0
4
- Summary: GAIA is a lightweight agent framework designed for the edge and AI PCs.
5
- Home-page: https://github.com/amd/gaia
6
- Author: AMD
7
- License: MIT
8
- Classifier: Development Status :: 4 - Beta
9
- Classifier: Intended Audience :: Developers
10
- Classifier: License :: OSI Approved :: MIT License
11
- Classifier: Operating System :: OS Independent
12
- Classifier: Programming Language :: Python :: 3
13
- Classifier: Programming Language :: Python :: 3.10
14
- Classifier: Programming Language :: Python :: 3.11
15
- Classifier: Programming Language :: Python :: 3.12
16
- Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
17
- Requires-Python: >=3.10
18
- Description-Content-Type: text/markdown
19
- License-File: LICENSE.md
20
- Requires-Dist: openai
21
- Requires-Dist: pydantic>=2.9.2
22
- Requires-Dist: transformers
23
- Requires-Dist: accelerate
24
- Requires-Dist: python-dotenv
25
- Requires-Dist: aiohttp
26
- Requires-Dist: rich
27
- Requires-Dist: watchdog>=2.1.0
28
- Requires-Dist: pillow>=9.0.0
29
- Provides-Extra: api
30
- Requires-Dist: fastapi>=0.115.0; extra == "api"
31
- Requires-Dist: uvicorn>=0.32.0; extra == "api"
32
- Requires-Dist: python-multipart>=0.0.9; extra == "api"
33
- Provides-Extra: audio
34
- Requires-Dist: torch<2.4,>=2.0.0; extra == "audio"
35
- Requires-Dist: torchvision<0.19.0; extra == "audio"
36
- Requires-Dist: torchaudio; extra == "audio"
37
- Provides-Extra: blender
38
- Requires-Dist: bpy; extra == "blender"
39
- Provides-Extra: mcp
40
- Requires-Dist: mcp>=1.1.0; extra == "mcp"
41
- Requires-Dist: starlette; extra == "mcp"
42
- Requires-Dist: uvicorn; extra == "mcp"
43
- Provides-Extra: dev
44
- Requires-Dist: pytest; extra == "dev"
45
- Requires-Dist: pytest-benchmark; extra == "dev"
46
- Requires-Dist: pytest-mock; extra == "dev"
47
- Requires-Dist: pytest-asyncio; extra == "dev"
48
- Requires-Dist: memory_profiler; extra == "dev"
49
- Requires-Dist: matplotlib; extra == "dev"
50
- Requires-Dist: adjustText; extra == "dev"
51
- Requires-Dist: plotly; extra == "dev"
52
- Requires-Dist: black; extra == "dev"
53
- Requires-Dist: pylint; extra == "dev"
54
- Requires-Dist: isort; extra == "dev"
55
- Requires-Dist: flake8; extra == "dev"
56
- Requires-Dist: autoflake; extra == "dev"
57
- Requires-Dist: mypy; extra == "dev"
58
- Requires-Dist: bandit; extra == "dev"
59
- Requires-Dist: responses; extra == "dev"
60
- Requires-Dist: requests; extra == "dev"
61
- Provides-Extra: eval
62
- Requires-Dist: anthropic; extra == "eval"
63
- Requires-Dist: bs4; extra == "eval"
64
- Requires-Dist: scikit-learn>=1.5.0; extra == "eval"
65
- Requires-Dist: numpy<2.3.0,>=2.0; extra == "eval"
66
- Requires-Dist: pypdf; extra == "eval"
67
- Provides-Extra: talk
68
- Requires-Dist: pyaudio; extra == "talk"
69
- Requires-Dist: openai-whisper; extra == "talk"
70
- Requires-Dist: numpy==1.26.4; extra == "talk"
71
- Requires-Dist: kokoro>=0.3.1; extra == "talk"
72
- Requires-Dist: soundfile; extra == "talk"
73
- Requires-Dist: sounddevice; extra == "talk"
74
- Provides-Extra: youtube
75
- Requires-Dist: llama-index-readers-youtube-transcript; extra == "youtube"
76
- Provides-Extra: rag
77
- Requires-Dist: pypdf; extra == "rag"
78
- Requires-Dist: pymupdf>=1.24.0; extra == "rag"
79
- Requires-Dist: sentence-transformers; extra == "rag"
80
- Requires-Dist: faiss-cpu>=1.7.0; extra == "rag"
81
- Provides-Extra: lint
82
- Requires-Dist: black; extra == "lint"
83
- Requires-Dist: pylint; extra == "lint"
84
- Requires-Dist: isort; extra == "lint"
85
- Requires-Dist: flake8; extra == "lint"
86
- Requires-Dist: autoflake; extra == "lint"
87
- Requires-Dist: mypy; extra == "lint"
88
- Requires-Dist: bandit; extra == "lint"
89
- Dynamic: author
90
- Dynamic: classifier
91
- Dynamic: description
92
- Dynamic: description-content-type
93
- Dynamic: home-page
94
- Dynamic: license
95
- Dynamic: license-file
96
- Dynamic: provides-extra
97
- Dynamic: requires-dist
98
- Dynamic: requires-python
99
- Dynamic: summary
100
-
101
- # <img src="https://raw.githubusercontent.com/amd/gaia/main/src/gaia/img/gaia.ico" alt="GAIA Logo" width="64" height="64" style="vertical-align: middle;"> GAIA: AI Agent Framework for AMD Ryzen AI
102
-
103
- [![GAIA Build Installer](https://github.com/amd/gaia/actions/workflows/build_installer.yml/badge.svg)](https://github.com/amd/gaia/tree/main/tests "Check out our build")
104
- [![GAIA CLI Tests](https://github.com/amd/gaia/actions/workflows/test_gaia_cli.yml/badge.svg)](https://github.com/amd/gaia/tree/main/tests "Check out our cli tests")
105
- [![Latest Release](https://img.shields.io/github/v/release/amd/gaia?include_prereleases)](https://github.com/amd/gaia/releases/latest "Download the latest release")
106
- [![PyPI](https://img.shields.io/pypi/v/amd-gaia)](https://pypi.org/project/amd-gaia/)
107
- [![GitHub downloads](https://img.shields.io/github/downloads/amd/gaia/total.svg)](https://github.com/amd/gaia/releases)
108
- [![OS - Windows](https://img.shields.io/badge/OS-Windows-blue)](https://amd-gaia.ai/quickstart "Windows installation")
109
- [![OS - Linux](https://img.shields.io/badge/OS-Linux-green)](https://amd-gaia.ai/quickstart "Linux installation")
110
- [![Python 3.10+](https://img.shields.io/badge/Python-3.10+-blue?logo=python&logoColor=white)](https://www.python.org/)
111
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
112
- [![Discord](https://img.shields.io/badge/Discord-Join%20Community-7289DA?logo=discord&logoColor=white)](https://discord.com/channels/1392562559122407535/1402013282495102997)
113
-
114
- **GAIA** is AMD's open-source framework for building intelligent AI agents that run **100% locally** on AMD Ryzen AI hardware. Keep your data private, eliminate cloud costs, and deploy in air-gapped environments—all with hardware-accelerated performance.
115
-
116
- <p align="center">
117
- <a href="https://amd-gaia.ai/quickstart"><strong>Get Started →</strong></a>
118
- </p>
119
-
120
- ---
121
-
122
- ## Why GAIA?
123
-
124
- | Feature | Description |
125
- |---------|-------------|
126
- | **100% Local** | All data stays on your machineperfect for sensitive workloads and air-gapped deployments |
127
- | **Zero Cloud Costs** | No API fees, no usage limits, no subscriptions—unlimited AI at no extra cost |
128
- | **Privacy-First** | HIPAA-compliant, GDPR-friendly—ideal for healthcare, finance, and enterprise |
129
- | **Ryzen AI Optimized** | Hardware-accelerated inference using NPU + iGPU on AMD Ryzen AI processors |
130
-
131
- ---
132
-
133
- ## Build Your First Agent
134
-
135
- ```python
136
- from gaia.agents.base.agent import Agent
137
- from gaia.agents.base.tools import tool
138
-
139
- class MyAgent(Agent):
140
- """A simple agent with custom tools."""
141
-
142
- def _get_system_prompt(self) -> str:
143
- return "You are a helpful assistant."
144
-
145
- def _register_tools(self):
146
- @tool
147
- def get_weather(city: str) -> dict:
148
- """Get weather for a city."""
149
- return {"city": city, "temperature": 72, "conditions": "Sunny"}
150
-
151
- agent = MyAgent()
152
- result = agent.process_query("What's the weather in Austin?")
153
- print(result)
154
- ```
155
-
156
- **[See the full quickstart guide →](https://amd-gaia.ai/quickstart)**
157
-
158
- ---
159
-
160
- ## Key Capabilities
161
-
162
- - **Agent Framework** — Base class with tool orchestration, state management, and error recovery
163
- - **RAG System** — Document indexing and semantic search for Q&A
164
- - **Voice Integration** — Whisper ASR + Kokoro TTS for speech interaction
165
- - **Vision Models** — Extract text from images with Qwen2.5-VL
166
- - **Plugin System** — Distribute agents via PyPI with auto-discovery
167
- - **Web UI Packaging** — Generate modern interfaces for your agents
168
-
169
- ---
170
-
171
- ## Quick Install
172
-
173
- ```bash
174
- pip install amd-gaia
175
- ```
176
-
177
- For complete setup instructions including Lemonade Server, see the **[Quickstart Guide](https://amd-gaia.ai/quickstart)**.
178
-
179
- ---
180
-
181
- ## System Requirements
182
-
183
- | Requirement | Minimum | Recommended |
184
- |-------------|---------|-------------|
185
- | **Processor** | AMD Ryzen AI 300-series | AMD Ryzen AI Max+ 395 |
186
- | **OS** | Windows 11, Linux | - |
187
- | **RAM** | 16GB | 64GB |
188
-
189
- ---
190
-
191
- ## Documentation
192
-
193
- - **[Quickstart](https://amd-gaia.ai/quickstart)** — Build your first agent in 10 minutes
194
- - **[SDK Reference](https://amd-gaia.ai/sdk)** — Complete API documentation
195
- - **[Guides](https://amd-gaia.ai/guides/chat)** — Chat, Voice, RAG, and more
196
- - **[FAQ](https://amd-gaia.ai/reference/faq)** — Frequently asked questions
197
-
198
- ---
199
-
200
- ## Contributing
201
-
202
- We welcome contributions! See our [Contributing Guide](CONTRIBUTING.md) for details.
203
-
204
- - **Build agents** in your own repository using GAIA as a dependency
205
- - **Improve the framework** — check [GitHub Issues](https://github.com/amd/gaia/issues) for open tasks
206
- - **Add documentation** — examples, tutorials, and guides
207
-
208
- ---
209
-
210
- ## Contact
211
-
212
- - **Email**: [gaia@amd.com](mailto:gaia@amd.com)
213
- - **Discord**: [Join our community](https://discord.com/channels/1392562559122407535/1402013282495102997)
214
- - **Issues**: [GitHub Issues](https://github.com/amd/gaia/issues)
215
-
216
- ---
217
-
218
- ## License
219
-
220
- [MIT License](./LICENSE.md)
221
-
222
- Copyright(C) 2024-2025 Advanced Micro Devices, Inc. All rights reserved.
223
- SPDX-License-Identifier: MIT
1
+ Metadata-Version: 2.4
2
+ Name: amd-gaia
3
+ Version: 0.15.2
4
+ Summary: GAIA is a lightweight agent framework designed for the edge and AI PCs.
5
+ Home-page: https://github.com/amd/gaia
6
+ Author: AMD
7
+ License: MIT
8
+ Classifier: Development Status :: 4 - Beta
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: License :: OSI Approved :: MIT License
11
+ Classifier: Operating System :: OS Independent
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: Python :: 3.10
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
17
+ Requires-Python: >=3.10
18
+ Description-Content-Type: text/markdown
19
+ License-File: LICENSE.md
20
+ Requires-Dist: openai
21
+ Requires-Dist: pydantic>=2.9.2
22
+ Requires-Dist: transformers
23
+ Requires-Dist: accelerate
24
+ Requires-Dist: python-dotenv
25
+ Requires-Dist: aiohttp
26
+ Requires-Dist: rich
27
+ Requires-Dist: watchdog>=2.1.0
28
+ Requires-Dist: pillow>=9.0.0
29
+ Provides-Extra: api
30
+ Requires-Dist: fastapi>=0.115.0; extra == "api"
31
+ Requires-Dist: uvicorn>=0.32.0; extra == "api"
32
+ Requires-Dist: python-multipart>=0.0.9; extra == "api"
33
+ Provides-Extra: audio
34
+ Requires-Dist: torch<2.4,>=2.0.0; extra == "audio"
35
+ Requires-Dist: torchvision<0.19.0; extra == "audio"
36
+ Requires-Dist: torchaudio; extra == "audio"
37
+ Provides-Extra: blender
38
+ Requires-Dist: bpy; extra == "blender"
39
+ Provides-Extra: mcp
40
+ Requires-Dist: mcp>=1.1.0; extra == "mcp"
41
+ Requires-Dist: starlette; extra == "mcp"
42
+ Requires-Dist: uvicorn; extra == "mcp"
43
+ Provides-Extra: dev
44
+ Requires-Dist: pytest; extra == "dev"
45
+ Requires-Dist: pytest-benchmark; extra == "dev"
46
+ Requires-Dist: pytest-mock; extra == "dev"
47
+ Requires-Dist: pytest-asyncio; extra == "dev"
48
+ Requires-Dist: memory_profiler; extra == "dev"
49
+ Requires-Dist: matplotlib; extra == "dev"
50
+ Requires-Dist: adjustText; extra == "dev"
51
+ Requires-Dist: plotly; extra == "dev"
52
+ Requires-Dist: black; extra == "dev"
53
+ Requires-Dist: pylint; extra == "dev"
54
+ Requires-Dist: isort; extra == "dev"
55
+ Requires-Dist: flake8; extra == "dev"
56
+ Requires-Dist: autoflake; extra == "dev"
57
+ Requires-Dist: mypy; extra == "dev"
58
+ Requires-Dist: bandit; extra == "dev"
59
+ Requires-Dist: responses; extra == "dev"
60
+ Requires-Dist: requests; extra == "dev"
61
+ Provides-Extra: eval
62
+ Requires-Dist: anthropic; extra == "eval"
63
+ Requires-Dist: bs4; extra == "eval"
64
+ Requires-Dist: scikit-learn>=1.5.0; extra == "eval"
65
+ Requires-Dist: numpy<2.3.0,>=2.0; extra == "eval"
66
+ Requires-Dist: pypdf; extra == "eval"
67
+ Provides-Extra: talk
68
+ Requires-Dist: pyaudio; extra == "talk"
69
+ Requires-Dist: openai-whisper; extra == "talk"
70
+ Requires-Dist: numpy==1.26.4; extra == "talk"
71
+ Requires-Dist: kokoro>=0.3.1; extra == "talk"
72
+ Requires-Dist: soundfile; extra == "talk"
73
+ Requires-Dist: sounddevice; extra == "talk"
74
+ Provides-Extra: youtube
75
+ Requires-Dist: llama-index-readers-youtube-transcript; extra == "youtube"
76
+ Provides-Extra: rag
77
+ Requires-Dist: pypdf; extra == "rag"
78
+ Requires-Dist: pymupdf>=1.24.0; extra == "rag"
79
+ Requires-Dist: sentence-transformers; extra == "rag"
80
+ Requires-Dist: faiss-cpu>=1.7.0; extra == "rag"
81
+ Provides-Extra: lint
82
+ Requires-Dist: black; extra == "lint"
83
+ Requires-Dist: pylint; extra == "lint"
84
+ Requires-Dist: isort; extra == "lint"
85
+ Requires-Dist: flake8; extra == "lint"
86
+ Requires-Dist: autoflake; extra == "lint"
87
+ Requires-Dist: mypy; extra == "lint"
88
+ Requires-Dist: bandit; extra == "lint"
89
+ Dynamic: author
90
+ Dynamic: classifier
91
+ Dynamic: description
92
+ Dynamic: description-content-type
93
+ Dynamic: home-page
94
+ Dynamic: license
95
+ Dynamic: license-file
96
+ Dynamic: provides-extra
97
+ Dynamic: requires-dist
98
+ Dynamic: requires-python
99
+ Dynamic: summary
100
+
101
+ # <img src="https://raw.githubusercontent.com/amd/gaia/main/src/gaia/img/gaia.ico" alt="GAIA Logo" width="64" height="64" style="vertical-align: middle;"> GAIA: AI Agent Framework for AMD Ryzen AI
102
+
103
+ [![GAIA CLI Tests](https://github.com/amd/gaia/actions/workflows/test_gaia_cli.yml/badge.svg)](https://github.com/amd/gaia/tree/main/tests "Check out our cli tests")
104
+ [![Latest Release](https://img.shields.io/github/v/release/amd/gaia?include_prereleases)](https://github.com/amd/gaia/releases/latest "Download the latest release")
105
+ [![PyPI](https://img.shields.io/pypi/v/amd-gaia)](https://pypi.org/project/amd-gaia/)
106
+ [![GitHub downloads](https://img.shields.io/github/downloads/amd/gaia/total.svg)](https://github.com/amd/gaia/releases)
107
+ [![OS - Windows](https://img.shields.io/badge/OS-Windows-blue)](https://amd-gaia.ai/quickstart "Windows installation")
108
+ [![OS - Linux](https://img.shields.io/badge/OS-Linux-green)](https://amd-gaia.ai/quickstart "Linux installation")
109
+ [![Python 3.10+](https://img.shields.io/badge/Python-3.10+-blue?logo=python&logoColor=white)](https://www.python.org/)
110
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
111
+ [![Discord](https://img.shields.io/badge/Discord-Join%20Community-7289DA?logo=discord&logoColor=white)](https://discord.com/channels/1392562559122407535/1402013282495102997)
112
+
113
+ **GAIA** is AMD's open-source framework for building intelligent AI agents that run **100% locally** on AMD Ryzen AI hardware. Keep your data private, eliminate cloud costs, and deploy in air-gapped environments—all with hardware-accelerated performance.
114
+
115
+ <p align="center">
116
+ <a href="https://amd-gaia.ai/quickstart"><strong>Get Started →</strong></a>
117
+ </p>
118
+
119
+ ---
120
+
121
+ ## Why GAIA?
122
+
123
+ | Feature | Description |
124
+ |---------|-------------|
125
+ | **100% Local** | All data stays on your machine—perfect for sensitive workloads and air-gapped deployments |
126
+ | **Zero Cloud Costs** | No API fees, no usage limits, no subscriptionsunlimited AI at no extra cost |
127
+ | **Privacy-First** | HIPAA-compliant, GDPR-friendly—ideal for healthcare, finance, and enterprise |
128
+ | **Ryzen AI Optimized** | Hardware-accelerated inference using NPU + iGPU on AMD Ryzen AI processors |
129
+
130
+ ---
131
+
132
+ ## Build Your First Agent
133
+
134
+ ```python
135
+ from gaia.agents.base.agent import Agent
136
+ from gaia.agents.base.tools import tool
137
+
138
+ class MyAgent(Agent):
139
+ """A simple agent with custom tools."""
140
+
141
+ def _get_system_prompt(self) -> str:
142
+ return "You are a helpful assistant."
143
+
144
+ def _register_tools(self):
145
+ @tool
146
+ def get_weather(city: str) -> dict:
147
+ """Get weather for a city."""
148
+ return {"city": city, "temperature": 72, "conditions": "Sunny"}
149
+
150
+ agent = MyAgent()
151
+ result = agent.process_query("What's the weather in Austin?")
152
+ print(result)
153
+ ```
154
+
155
+ **[See the full quickstart guide →](https://amd-gaia.ai/quickstart)**
156
+
157
+ ---
158
+
159
+ ## Key Capabilities
160
+
161
+ - **Agent Framework** — Base class with tool orchestration, state management, and error recovery
162
+ - **RAG System** — Document indexing and semantic search for Q&A
163
+ - **Voice Integration** — Whisper ASR + Kokoro TTS for speech interaction
164
+ - **Vision Models** — Extract text from images with Qwen2.5-VL
165
+ - **Plugin System** — Distribute agents via PyPI with auto-discovery
166
+ - **Web UI Packaging** — Generate modern interfaces for your agents
167
+
168
+ ---
169
+
170
+ ## Quick Install
171
+
172
+ ```bash
173
+ pip install amd-gaia
174
+ ```
175
+
176
+ For complete setup instructions including Lemonade Server, see the **[Quickstart Guide](https://amd-gaia.ai/quickstart)**.
177
+
178
+ ---
179
+
180
+ ## System Requirements
181
+
182
+ | Requirement | Minimum | Recommended |
183
+ |-------------|---------|-------------|
184
+ | **Processor** | AMD Ryzen AI 300-series | AMD Ryzen AI Max+ 395 |
185
+ | **OS** | Windows 11, Linux | - |
186
+ | **RAM** | 16GB | 64GB |
187
+
188
+ ---
189
+
190
+ ## Documentation
191
+
192
+ - **[Quickstart](https://amd-gaia.ai/quickstart)** — Build your first agent in 10 minutes
193
+ - **[SDK Reference](https://amd-gaia.ai/sdk)** — Complete API documentation
194
+ - **[Guides](https://amd-gaia.ai/guides/chat)** — Chat, Voice, RAG, and more
195
+ - **[FAQ](https://amd-gaia.ai/reference/faq)** — Frequently asked questions
196
+
197
+ ---
198
+
199
+ ## Contributing
200
+
201
+ We welcome contributions! See our [Contributing Guide](CONTRIBUTING.md) for details.
202
+
203
+ - **Build agents** in your own repository using GAIA as a dependency
204
+ - **Improve the framework** check [GitHub Issues](https://github.com/amd/gaia/issues) for open tasks
205
+ - **Add documentation** — examples, tutorials, and guides
206
+
207
+ ---
208
+
209
+ ## Contact
210
+
211
+ - **Email**: [gaia@amd.com](mailto:gaia@amd.com)
212
+ - **Discord**: [Join our community](https://discord.com/channels/1392562559122407535/1402013282495102997)
213
+ - **Issues**: [GitHub Issues](https://github.com/amd/gaia/issues)
214
+
215
+ ---
216
+
217
+ ## License
218
+
219
+ [MIT License](./LICENSE.md)
220
+
221
+ Copyright(C) 2024-2025 Advanced Micro Devices, Inc. All rights reserved.
222
+ SPDX-License-Identifier: MIT