llm.rb 15.3.0 → 15.4.1

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 (76) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +148 -3
  3. data/README.md +185 -71
  4. data/bin/llm.rb +9 -2
  5. data/data/alibaba.json +47 -2
  6. data/data/anthropic.json +67 -0
  7. data/data/bedrock.json +1828 -425
  8. data/data/deepinfra.json +148 -16
  9. data/data/deepseek.json +7 -4
  10. data/data/google.json +3 -3
  11. data/data/mistral.json +42 -0
  12. data/data/moonshot.json +1 -1
  13. data/data/openai.json +186 -0
  14. data/data/openrouter.json +1783 -440
  15. data/data/xai.json +53 -20
  16. data/data/zai.json +90 -4
  17. data/docs/deepdive/advanced/compaction.md +1 -2
  18. data/docs/deepdive/advanced/context.md +214 -1
  19. data/docs/deepdive/advanced/guard.md +9 -57
  20. data/docs/deepdive/features/builtin_tools.md +14 -16
  21. data/docs/deepdive/features/console.md +5 -0
  22. data/docs/deepdive/features/database.md +85 -10
  23. data/docs/deepdive/fundamentals/agents.md +7 -8
  24. data/docs/deepdive/fundamentals/providers.md +45 -5
  25. data/docs/deepdive/fundamentals/schema.md +73 -0
  26. data/docs/deepdive/fundamentals/tools.md +80 -27
  27. data/docs/deepdive/media/audio.md +8 -19
  28. data/docs/deepdive/media/images.md +8 -10
  29. data/docs/deepdive/media/ocr.md +1 -3
  30. data/docs/deepdive/reference/cost.md +48 -0
  31. data/docs/deepdive/reference/tracer.md +76 -0
  32. data/docs/deepdive.md +1 -1
  33. data/lib/llm/active_record/message.rb +113 -0
  34. data/lib/llm/active_record.rb +1 -0
  35. data/lib/llm/agent.rb +28 -19
  36. data/lib/llm/console/buffer.rb +9 -1
  37. data/lib/llm/console.rb +6 -1
  38. data/lib/llm/context/deserializer.rb +6 -1
  39. data/lib/llm/context.rb +8 -4
  40. data/lib/llm/guard.rb +2 -8
  41. data/lib/llm/provider.rb +16 -0
  42. data/lib/llm/providers/alibaba.rb +15 -0
  43. data/lib/llm/providers/anthropic/error_handler.rb +5 -2
  44. data/lib/llm/providers/anthropic/files.rb +12 -12
  45. data/lib/llm/providers/anthropic/models.rb +2 -2
  46. data/lib/llm/providers/anthropic.rb +2 -2
  47. data/lib/llm/providers/bedrock/error_handler.rb +3 -2
  48. data/lib/llm/providers/bedrock/models.rb +5 -3
  49. data/lib/llm/providers/bedrock.rb +2 -2
  50. data/lib/llm/providers/deepinfra/audio.rb +4 -4
  51. data/lib/llm/providers/deepinfra/images.rb +4 -4
  52. data/lib/llm/providers/google/error_handler.rb +5 -2
  53. data/lib/llm/providers/google/files.rb +10 -10
  54. data/lib/llm/providers/google/images.rb +2 -2
  55. data/lib/llm/providers/google/models.rb +2 -2
  56. data/lib/llm/providers/google.rb +4 -4
  57. data/lib/llm/providers/ollama/error_handler.rb +5 -2
  58. data/lib/llm/providers/ollama/models.rb +2 -2
  59. data/lib/llm/providers/ollama.rb +4 -4
  60. data/lib/llm/providers/openai/audio.rb +6 -6
  61. data/lib/llm/providers/openai/error_handler.rb +5 -2
  62. data/lib/llm/providers/openai/files.rb +10 -10
  63. data/lib/llm/providers/openai/images.rb +4 -4
  64. data/lib/llm/providers/openai/models.rb +2 -2
  65. data/lib/llm/providers/openai/moderations.rb +2 -2
  66. data/lib/llm/providers/openai/responses.rb +6 -6
  67. data/lib/llm/providers/openai/vector_stores.rb +22 -22
  68. data/lib/llm/providers/openai.rb +4 -4
  69. data/lib/llm/providers/xai/images.rb +4 -4
  70. data/lib/llm/tracer/telemetry.rb +4 -4
  71. data/lib/llm/tracer.rb +11 -3
  72. data/lib/llm/transport/execution.rb +8 -4
  73. data/lib/llm/version.rb +1 -1
  74. data/llm.gemspec +0 -6
  75. metadata +3 -5
  76. data/lib/llm/guard/loop.rb +0 -89
data/data/anthropic.json CHANGED
@@ -57,6 +57,73 @@
57
57
  "cache_write": 3.75
58
58
  }
59
59
  },
60
+ "claude-opus-5-5": {
61
+ "id": "claude-opus-5-5",
62
+ "name": "Claude Opus 5.5",
63
+ "description": "Claude model for long-running agentic coding and knowledge work",
64
+ "family": "claude-opus",
65
+ "attachment": true,
66
+ "reasoning": true,
67
+ "reasoning_options": [
68
+ {
69
+ "type": "effort",
70
+ "values": [
71
+ "low",
72
+ "medium",
73
+ "high",
74
+ "xhigh",
75
+ "max"
76
+ ]
77
+ }
78
+ ],
79
+ "tool_call": true,
80
+ "structured_output": true,
81
+ "temperature": false,
82
+ "knowledge": "2026-06",
83
+ "release_date": "2026-09-22",
84
+ "last_updated": "2026-09-22",
85
+ "modalities": {
86
+ "input": [
87
+ "text",
88
+ "image",
89
+ "pdf"
90
+ ],
91
+ "output": [
92
+ "text"
93
+ ]
94
+ },
95
+ "open_weights": false,
96
+ "limit": {
97
+ "context": 1000000,
98
+ "output": 128000
99
+ },
100
+ "experimental": {
101
+ "modes": {
102
+ "fast": {
103
+ "cost": {
104
+ "input": 8,
105
+ "output": 40,
106
+ "cache_read": 0.4,
107
+ "cache_write": 10
108
+ },
109
+ "provider": {
110
+ "body": {
111
+ "speed": "fast"
112
+ },
113
+ "headers": {
114
+ "anthropic-beta": "fast-mode-2026-02-01"
115
+ }
116
+ }
117
+ }
118
+ }
119
+ },
120
+ "cost": {
121
+ "input": 4,
122
+ "output": 20,
123
+ "cache_read": 0.2,
124
+ "cache_write": 5
125
+ }
126
+ },
60
127
  "claude-opus-5": {
61
128
  "id": "claude-opus-5",
62
129
  "name": "Claude Opus 5",