Langchaingo
LangChain for Go, the easiest way to write LLM-based programs in Go
Install / Use
/learn @tmc/LangchaingoREADME
🎉 Join our new official Discord community! Connect with other LangChain Go developers, get help and contribute: Join Discord
🦜️🔗 LangChain Go
<img src="https://github.com/codespaces/badge.svg" title="Open in Github Codespace" width="150" height="20">
⚡ 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:
- Using Gemini models in Go with LangChainGo - Jan 2024
- Using Ollama with LangChainGo - Nov 2023
- Creating a simple ChatGPT clone with Go - Aug 2023
- Creating a ChatGPT Clone that Runs on Your Laptop with Go - Aug 2023
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.
<a href="https://github.com/tmc/langchaingo/graphs/contributors"> <img src="https://contrib.rocks/image?repo=tmc/langchaingo" /> </a>