tmc/langchaingo

LangChain for Go, the easiest way to write LLM-based programs in Go

9,677

stars

1,529

commits

Go

primary language

Jan 11, 2026

updated

tmc.github.io/langchaingo/
ai
go
golang
langchain

README

🎉 Join our new official Discord community! Connect with other LangChain Go developers, get help and contribute: Join Discord

🦜️🔗 LangChain Go

go.dev reference scorecard Open in Dev Containers

⚡ Building applications with LLMs through composability, with Go! ⚡

🤔 What is this?

This is the Go language implementation of LangChain.

📖 Documentation

🎉 Examples

See ./examples for example usage.

package main

import (
  "context"
  "fmt"
  "log"

  "github.com/tmc/langchaingo/llms"
  "github.com/tmc/langchaingo/llms/openai"
)

func main() {
  ctx := context.Background()
  llm, err := openai.New()
  if err != nil {
    log.Fatal(err)
  }
  prompt := "What would be a good company name for a company that makes colorful socks?"
  completion, err := llms.GenerateFromSinglePrompt(ctx, llm, prompt)
  if err != nil {
    log.Fatal(err)
  }
  fmt.Println(completion)
}
$ go run .
Socktastic

Resources

Join the Discord server for support and discussions: Join Discord

Here are some links to blog posts and articles on using Langchain Go:

Contributors

There is a momentum for moving the development of langchaingo to a more community effort, if you are interested in being a maintainer or you are a contributor please join our Discord and let us know.

Contributors

(top 30 of 179)

tmc

504 commits

FluffyKebab

188 commits

eliben

117 commits

Abraxas-365

55 commits

tmc/langchaingo

LangChain for Go, the easiest way to write LLM-based programs in Go

9,677

stars

1,529

commits

Go

primary language

Jan 11, 2026

updated

tmc.github.io/langchaingo/
ai
go
golang
langchain

README

🎉 Join our new official Discord community! Connect with other LangChain Go developers, get help and contribute: Join Discord

🦜️🔗 LangChain Go

go.dev reference scorecard Open in Dev Containers

⚡ Building applications with LLMs through composability, with Go! ⚡

🤔 What is this?

This is the Go language implementation of LangChain.

📖 Documentation

🎉 Examples

See ./examples for example usage.

package main

import (
  "context"
  "fmt"
  "log"

  "github.com/tmc/langchaingo/llms"
  "github.com/tmc/langchaingo/llms/openai"
)

func main() {
  ctx := context.Background()
  llm, err := openai.New()
  if err != nil {
    log.Fatal(err)
  }
  prompt := "What would be a good company name for a company that makes colorful socks?"
  completion, err := llms.GenerateFromSinglePrompt(ctx, llm, prompt)
  if err != nil {
    log.Fatal(err)
  }
  fmt.Println(completion)
}
$ go run .
Socktastic

Resources

Join the Discord server for support and discussions: Join Discord

Here are some links to blog posts and articles on using Langchain Go:

Contributors

There is a momentum for moving the development of langchaingo to a more community effort, if you are interested in being a maintainer or you are a contributor please join our Discord and let us know.

Contributors

(top 30 of 179)

tmc

504 commits

FluffyKebab

188 commits

eliben

117 commits

Abraxas-365

55 commits

Languages

Go

99.6%