Telegram Group & Telegram Channel
👣 GoPilot

GoPilot — это библиотека для Go, которая позволяет вызывать ваши функции с помощью естественного языка.

⚡️ С её помощью можно:
- Анализировать запросы на естественном языке
- Автоматически выбирать нужную функцию
- Преобразовывать динамические параметры в строго типизированные структуры
- Проверять обязательные поля и валидировать входные данные
- Управлять порядком выполнения и ответами

## Ключевые особенности

- Natural Language Processing
Обработка запросов пользователя без ручного парсинга текста.
- Automatic Function Routing
GoPilot сам сопоставляет запрос с зарегистрированной функцией.
- Type-Safe Parameter Mapping
Динамические вводимые данные конвертируются в структуры Go.
- Built-in Validation
Генерируемая схема параметров учитывает теги required, description и др.
- Easy Integration
Простое API: регистрируете функции и задаёте системный промпт.
- Flexible Response Handling
Поддержка разных форматов ответа и «режимов» выполнения.

## Быстрый старт


import (
"context"
"github.com/SadikSunbul/gopilot"
"github.com/SadikSunbul/gopilot/clients"
"github.com/SadikSunbul/gopilot/pkg/generator"
)

type WeatherParams struct {
City string `json:"city" description:"City name" required:"true"`
}
type WeatherResponse struct {
City string `json:"city"`
Temp int `json:"temp"`
Condition string `json:"condition"`
}

func GetWeather(p WeatherParams) (WeatherResponse, error) {
return WeatherResponse{City: p.City, Temp: 25, Condition: "sunny"}, nil
}

func main() {
client, _ := clients.NewGeminiClient(context.Background(), "API_KEY", "gemini-2.0-flash")
gp, _ := gopilot.NewGopilot(client)

weatherFn := &gopilot.Function[WeatherParams, WeatherResponse]{
Name: "weather-agent",
Description: "Get weather by city",
Parameters: generator.GenerateParameterSchema(WeatherParams{}),
Execute: GetWeather,
}
gp.FunctionRegister(weatherFn)
gp.SetSystemPrompt(nil)

// Генерация + выполнение за один вызов
result, _ := gp.GenerateAndExecute("Какая погода в Москве?")
fmt.Printf("%+v\n", result)
}


Github

@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/Golang_google/2886
Create:
Last Update:

👣 GoPilot

GoPilot — это библиотека для Go, которая позволяет вызывать ваши функции с помощью естественного языка.

⚡️ С её помощью можно:
- Анализировать запросы на естественном языке
- Автоматически выбирать нужную функцию
- Преобразовывать динамические параметры в строго типизированные структуры
- Проверять обязательные поля и валидировать входные данные
- Управлять порядком выполнения и ответами

## Ключевые особенности

- Natural Language Processing
Обработка запросов пользователя без ручного парсинга текста.
- Automatic Function Routing
GoPilot сам сопоставляет запрос с зарегистрированной функцией.
- Type-Safe Parameter Mapping
Динамические вводимые данные конвертируются в структуры Go.
- Built-in Validation
Генерируемая схема параметров учитывает теги required, description и др.
- Easy Integration
Простое API: регистрируете функции и задаёте системный промпт.
- Flexible Response Handling
Поддержка разных форматов ответа и «режимов» выполнения.

## Быстрый старт


import (
"context"
"github.com/SadikSunbul/gopilot"
"github.com/SadikSunbul/gopilot/clients"
"github.com/SadikSunbul/gopilot/pkg/generator"
)

type WeatherParams struct {
City string `json:"city" description:"City name" required:"true"`
}
type WeatherResponse struct {
City string `json:"city"`
Temp int `json:"temp"`
Condition string `json:"condition"`
}

func GetWeather(p WeatherParams) (WeatherResponse, error) {
return WeatherResponse{City: p.City, Temp: 25, Condition: "sunny"}, nil
}

func main() {
client, _ := clients.NewGeminiClient(context.Background(), "API_KEY", "gemini-2.0-flash")
gp, _ := gopilot.NewGopilot(client)

weatherFn := &gopilot.Function[WeatherParams, WeatherResponse]{
Name: "weather-agent",
Description: "Get weather by city",
Parameters: generator.GenerateParameterSchema(WeatherParams{}),
Execute: GetWeather,
}
gp.FunctionRegister(weatherFn)
gp.SetSystemPrompt(nil)

// Генерация + выполнение за один вызов
result, _ := gp.GenerateAndExecute("Какая погода в Москве?")
fmt.Printf("%+v\n", result)
}


Github

@golang_google

BY Golang




Share with your friend now:
tg-me.com/Golang_google/2886

View MORE
Open in Telegram


Golang Telegram | DID YOU KNOW?

Date: |

The S&P 500 slumped 1.8% on Monday and Tuesday, thanks to China Evergrande, the Chinese property company that looks like it is ready to default on its more-than $300 billion in debt. Cries of the next Lehman Brothers—or maybe the next Silverado?—echoed through the canyons of Wall Street as investors prepared for the worst.

Traders also expressed uncertainty about the situation with China Evergrande, as the indebted property company has not provided clarification about a key interest payment.In economic news, the Commerce Department reported an unexpected increase in U.S. new home sales in August.Crude oil prices climbed Friday and front-month WTI oil futures contracts saw gains for a fifth straight week amid tighter supplies. West Texas Intermediate Crude oil futures for November rose $0.68 or 0.9 percent at 73.98 a barrel. WTI Crude futures gained 2.8 percent for the week.

Golang from id


Telegram Golang
FROM USA