Skip to content

Commit

Permalink
chore: simplify example
Browse files Browse the repository at this point in the history
  • Loading branch information
nurali-techie committed Feb 2, 2025
1 parent 2aa5ff8 commit a994f63
Show file tree
Hide file tree
Showing 8 changed files with 67 additions and 81 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ We needed to call the DeepSeek API from one of our Go services but couldn't find

Because this Go client is not only complete and reliable but also simple and performant.

- **Complete** – It offers full support for all APIs, including their complete request and response payloads. (Note: Beta version coming soon.)
- **Complete** – It offers full support for all APIs, including their complete request and response payloads. (Note: Beta feature support coming soon.)

- **Reliable** – We have implemented numerous Go tests to ensure that all features function correctly at all times.
- **Reliable** – We have implemented numerous Go tests to ensure that all features work correctly at all times.

- **Simple** – The client is organized into multiple Go packages, making it easy to navigate and ensuring that each package contains only relevant and necessary features.
- **Simple** – The client is organized into multiple Go packages to ensure that each package contains only relevant and necessary features, making it easy to use.

- **Performant** – Speed is crucial when working with AI models. We have optimized this client to deliver the fastest possible performance.

Expand Down
17 changes: 4 additions & 13 deletions examples/01-chat/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,11 @@ import (
"github.com/go-deepseek/deepseek/request"
)

var apiKey = "your_deepseek_api_key"

func main() {
if apiKeyEnv := os.Getenv("DEEPSEEK_API_KEY"); apiKeyEnv != "" {
apiKey = apiKeyEnv
}

// create deepseek api client
cli, err := deepseek.NewClient(apiKey)
if err != nil {
panic(err)
}

inputMessage := "Hello" // set your input message
cli, _ := deepseek.NewClient(os.Getenv("DEEPSEEK_API_KEY"))

inputMessage := "Hello Deepseek!" // set your input message
chatReq := &request.ChatCompletionsRequest{
Model: deepseek.DEEPSEEK_CHAT_MODEL,
Stream: false,
Expand All @@ -39,7 +29,8 @@ func main() {
// call deepseek api
chatResp, err := cli.CallChatCompletionsChat(context.Background(), chatReq)
if err != nil {
panic(err)
fmt.Println("error => ", err)
return
}
fmt.Printf("output message => %s\n", chatResp.Choices[0].Message.Content)
}
17 changes: 4 additions & 13 deletions examples/02-reasoner/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,11 @@ import (
"github.com/go-deepseek/deepseek/request"
)

var apiKey = "your_deepseek_api_key"

func main() {
if apiKeyEnv := os.Getenv("DEEPSEEK_API_KEY"); apiKeyEnv != "" {
apiKey = apiKeyEnv
}

// create deepseek api client
cli, err := deepseek.NewClient(apiKey)
if err != nil {
panic(err)
}

inputMessage := "Hello" // set your input message
cli, _ := deepseek.NewClient(os.Getenv("DEEPSEEK_API_KEY"))

inputMessage := "Hello Deepseek!" // set your input message
chatReq := &request.ChatCompletionsRequest{
Model: deepseek.DEEPSEEK_REASONER_MODEL,
Stream: false,
Expand All @@ -39,7 +29,8 @@ func main() {
// call deepseek api
chatResp, err := cli.CallChatCompletionsReasoner(context.Background(), chatReq)
if err != nil {
panic(err)
fmt.Println("error => ", err)
return
}
fmt.Printf("output reasoning => %s\n", chatResp.Choices[0].Message.ReasoningContent)
fmt.Printf("output message => %s\n", chatResp.Choices[0].Message.Content)
Expand Down
17 changes: 4 additions & 13 deletions examples/03-chat-stream/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,11 @@ import (
"github.com/go-deepseek/deepseek/request"
)

var apiKey = "your_deepseek_api_key"

func main() {
if apiKeyEnv := os.Getenv("DEEPSEEK_API_KEY"); apiKeyEnv != "" {
apiKey = apiKeyEnv
}

// create deepseek api client
cli, err := deepseek.NewClient(apiKey)
if err != nil {
panic(err)
}

inputMessage := "Hello" // set your input message
cli, _ := deepseek.NewClient(os.Getenv("DEEPSEEK_API_KEY"))

inputMessage := "Hello Deepseek!" // set your input message
chatReq := &request.ChatCompletionsRequest{
Model: deepseek.DEEPSEEK_CHAT_MODEL,
Stream: true,
Expand All @@ -40,7 +30,8 @@ func main() {
// call deepseek api
sr, err := cli.StreamChatCompletionsChat(context.Background(), chatReq)
if err != nil {
panic(err)
fmt.Println("error => ", err)
return
}

fmt.Print("output message => ")
Expand Down
17 changes: 4 additions & 13 deletions examples/04-reasoner-stream/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,11 @@ import (
"github.com/go-deepseek/deepseek/request"
)

var apiKey = "your_deepseek_api_key"

func main() {
if apiKeyEnv := os.Getenv("DEEPSEEK_API_KEY"); apiKeyEnv != "" {
apiKey = apiKeyEnv
}

// create deepseek api client
cli, err := deepseek.NewClient(apiKey)
if err != nil {
panic(err)
}

inputMessage := "Hello" // set your input message
cli, _ := deepseek.NewClient(os.Getenv("DEEPSEEK_API_KEY"))

inputMessage := "Hello Deepseek!" // set your input message
chatReq := &request.ChatCompletionsRequest{
Model: deepseek.DEEPSEEK_REASONER_MODEL,
Stream: true,
Expand All @@ -40,7 +30,8 @@ func main() {
// call deepseek api
sr, err := cli.StreamChatCompletionsReasoner(context.Background(), chatReq)
if err != nil {
panic(err)
fmt.Println("error => ", err)
return
}

fmt.Print("output message => ")
Expand Down
19 changes: 5 additions & 14 deletions examples/05-client-config/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,16 @@ import (
"github.com/go-deepseek/deepseek/request"
)

var apiKey = "your_deepseek_api_key"

func main() {
if apiKeyEnv := os.Getenv("DEEPSEEK_API_KEY"); apiKeyEnv != "" {
apiKey = apiKeyEnv
}

// create deepseek api client with custom config
cfg := config.Config{
ApiKey: apiKey,
ApiKey: os.Getenv("DEEPSEEK_API_KEY"),
TimeoutSeconds: 60,
DisableRequestValidation: true,
}
cli, err := deepseek.NewClientWithConfig(cfg)
if err != nil {
panic(err)
}

inputMessage := "Hello" // set your input message
cli, _ := deepseek.NewClientWithConfig(cfg)

inputMessage := "Hello Deepseek!" // set your input message
chatReq := &request.ChatCompletionsRequest{
Model: deepseek.DEEPSEEK_CHAT_MODEL,
Stream: false,
Expand All @@ -45,7 +35,8 @@ func main() {
// call deepseek api
chatResp, err := cli.CallChatCompletionsChat(context.Background(), chatReq)
if err != nil {
panic(err)
fmt.Println("error => ", err)
return
}
fmt.Printf("output message => %s\n", chatResp.Choices[0].Message.Content)
}
38 changes: 38 additions & 0 deletions examples/06-context-timeout/main.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
package main

import (
"context"
"fmt"
"os"
"time"

"github.com/go-deepseek/deepseek"
"github.com/go-deepseek/deepseek/request"
)

func main() {
// create deepseek api client
cli, _ := deepseek.NewClient(os.Getenv("DEEPSEEK_API_KEY"))

inputMessage := "Hello Deepseek!" // set your input message
chatReq := &request.ChatCompletionsRequest{
Model: deepseek.DEEPSEEK_CHAT_MODEL,
Stream: false,
Messages: []*request.Message{
{
Role: "user",
Content: inputMessage,
},
},
}
fmt.Printf("input message => %s\n", chatReq.Messages[0].Content)

// call deepseek api
ctx, _ := context.WithTimeout(context.Background(), time.Second*2) // wait for 2 seconds to get response
chatResp, err := cli.CallChatCompletionsChat(ctx, chatReq)
if err != nil {
fmt.Println("error => ", err)
return
}
fmt.Printf("output message => %s\n", chatResp.Choices[0].Message.Content)
}
17 changes: 5 additions & 12 deletions examples/99-deepseek-demo/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,9 @@ import (
"github.com/go-deepseek/deepseek/request"
)

var apiKey = "your_deepseek_api_key"

func main() {
if apiKeyEnv := os.Getenv("DEEPSEEK_API_KEY"); apiKeyEnv != "" {
apiKey = apiKeyEnv
}

// create deepseek api client
cli, err := deepseek.NewClient(apiKey)
if err != nil {
panic(err)
}
cli, _ := deepseek.NewClient(os.Getenv("DEEPSEEK_API_KEY"))

fmt.Println("This is deepseek demo; type `bye` to exit")
for {
Expand Down Expand Up @@ -54,7 +45,8 @@ func main() {
// call deepseek api
sr, err := cli.StreamChatCompletionsReasoner(context.Background(), chatReq)
if err != nil {
panic(err)
fmt.Println("error => ", err)
return
}

for {
Expand All @@ -63,7 +55,8 @@ func main() {
if err == io.EOF {
break
}
panic(err)
fmt.Println("error => ", err)
return
}
if chatResp.Choices[0].Delta.ReasoningContent != "" {
fmt.Print(chatResp.Choices[0].Delta.ReasoningContent)
Expand Down

0 comments on commit a994f63

Please sign in to comment.