Skip to content

🪿 LinGoose is a Go framework for building awesome AI/LLM applications.

License

Notifications You must be signed in to change notification settings

henomis/lingoose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

780ad85 · Mar 20, 2025
Mar 20, 2025
Nov 2, 2024
Nov 2, 2024
Sep 15, 2023
Nov 2, 2024
Nov 2, 2024
Sep 15, 2023
Nov 2, 2024
Mar 15, 2024
Mar 8, 2025
Nov 2, 2024
Feb 5, 2024
Nov 2, 2024
May 14, 2024
Mar 8, 2024
Mar 15, 2024
Nov 2, 2024
May 17, 2024
Sep 15, 2023
Nov 2, 2024
Sep 15, 2023
Apr 26, 2023
Apr 11, 2024
Apr 17, 2023
May 14, 2024
Nov 2, 2024
Nov 2, 2024

Repository files navigation

lingoose

🪿 LinGoose Build Status GoDoc Go Report Card GitHub release

What is LinGoose?

LinGoose is a Go framework for building awesome AI/LLM applications.

  • LinGoose is modular — You can import only the modules you need to build your application.
  • LinGoose is an abstraction of features — You can choose your preferred implementation of a feature and/or create your own.
  • LinGoose is a complete solution — You can use LinGoose to build your AI/LLM application from the ground up.

Did you know? A goose 🪿 fills its car 🚗 with goose-line ⛽!

🚀 Support the project by starring ⭐ the repository on GitHub and sharing it with your friends!

Quick start

  1. Initialise a new go module
mkdir example
cd example
go mod init example
  1. Create your first LinGoose application
package main

import (
	"context"
	"fmt"

	"github.com/henomis/lingoose/llm/openai"
	"github.com/henomis/lingoose/thread"
)

func main() {
	myThread := thread.New().AddMessage(
		thread.NewUserMessage().AddContent(
			thread.NewTextContent("Tell me a joke about geese"),
		),
	)

	err := openai.New().Generate(context.Background(), myThread)
	if err != nil {
		panic(err)
	}

	fmt.Println(myThread)
}
  1. Install the Go dependencies
go mod tidy
  1. Start the example application
export OPENAI_API_KEY=your-api-key

go run .

A goose fills its car with goose-line!

Reporting Issues

If you think you've found a bug, or something isn't behaving the way you think it should, please raise an issue on GitHub.

Contributing

We welcome contributions, Read our Contribution Guidelines to learn more about contributing to LinGoose

Blog posts and articles

Connect with the author

Twitter GitHub Linkedin

Join the community

Discord

License

© Simone Vellei, 2023~time.Now() Released under the MIT License