v0.2.0
π Syndicate SDK v0.2.0 Release - Smarter, Stronger, and More Flexible! π
Hey awesome developers! π Weβre thrilled to introduce Syndicate SDK v0.2.0 β packed with new features, optimizations, and enhancements to make AI agent development in Go even more powerful! πͺβ¨
π Whatβs New?
π€ Agent Management Enhancements
- More flexibility in building agents β Customize system prompts, memory, and tools with ease.
- Improved orchestration β Recruit and manage multiple agents in a predefined sequence.
π§ Tool Schemas & JSON Validation
- Auto-generate JSON schemas from Go structures for structured input validation.
- Enhanced execution flow β Tools can now enforce strict input validation, reducing errors.
π§ Memory Implementations
- Custom memory support β Implement your own memory storage while leveraging built-in options.
- Concurrency-safe design β Ensuring thread safety for multi-agent interactions.
π Prompt Engineering Like a Pro
- Structured prompts with sections & subsections π for clarity and organization.
- Easier prompt modifications β Create dynamic configuration prompts in a fluent API.
π¦Ύ Syndicate System - The AI Orchestrator!
- Seamlessly manage multiple agents in a step-by-step execution pipeline.
- Designed for complex workflows β Perfect for real-world AI-driven applications.
π₯ Code Examples to Get You Started
π Creating an AI Agent
agent, err := syndicate.NewAgent().
SetClient(openaiClient).
SetName("OrderAgent").
SetConfigPrompt("You handle customer orders and process them accordingly.").
SetModel(openai.GPT4).
Build()π οΈ Defining a Tool for Order Processing
type OrderSchema struct {
Items []string `json:"items"`
CustomerName string `json:"customer_name"`
}
func (ot *OrderTool) Execute(args json.RawMessage) (interface{}, error) {
var order OrderSchema
json.Unmarshal(args, &order)
return fmt.Sprintf("Order received for %s!", order.CustomerName), nil
}ποΈ Orchestrating Multiple Agents
syndicateSystem := syndicate.NewSyndicate().
RecruitAgent(orderAgent).
RecruitAgent(summaryAgent).
DefinePipeline([]string{"OrderAgent", "SummaryAgent"}).
Build()π Why Upgrade?
β
More control over AI agent workflows π
β
Stronger type safety with JSON schema validation π₯
β
Cleaner and more maintainable prompt engineering π
β
Smarter and more efficient memory management π§
Weβre just getting started β expect even more improvements in the future! π
Give it a try and let us know what you think! π£οΈπ¬
π Install or Upgrade Now:
go get -u github.com/Dieg0Code/syndicate-goHappy coding! π»β¨