mirror of
https://github.com/ArvinLovegood/go-stock.git
synced 2025-07-19 00:00:09 +08:00
refactor(backend): 优化 API 客户端配置并调整日志输出
- 为 OpenAI API 客户端添加重试次数和超时设置 - 修改 OpenAI API 客户端初始化,设置基础 URL - 优化 OpenAI API 响应数据的处理逻辑 - 为 stock_data API 客户端添加重试次数设置 - 在 stock_data API 中添加日志和错误处理
This commit is contained in:
parent
f5aa70bf61
commit
869eced99e
@ -9,6 +9,7 @@ import (
|
|||||||
"go-stock/backend/logger"
|
"go-stock/backend/logger"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
// @Author spark
|
// @Author spark
|
||||||
@ -128,6 +129,8 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
|||||||
client.SetBaseURL(o.BaseUrl)
|
client.SetBaseURL(o.BaseUrl)
|
||||||
client.SetHeader("Authorization", "Bearer "+o.ApiKey)
|
client.SetHeader("Authorization", "Bearer "+o.ApiKey)
|
||||||
client.SetHeader("Content-Type", "application/json")
|
client.SetHeader("Content-Type", "application/json")
|
||||||
|
client.SetRetryCount(3)
|
||||||
|
client.SetTimeout(time.Second * 30)
|
||||||
|
|
||||||
msg := []map[string]interface{}{
|
msg := []map[string]interface{}{
|
||||||
{
|
{
|
||||||
@ -139,8 +142,8 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
wg := &sync.WaitGroup{}
|
wg := &sync.WaitGroup{}
|
||||||
|
|
||||||
wg.Add(4)
|
wg.Add(4)
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
messages := SearchStockPriceInfo(stockCode)
|
messages := SearchStockPriceInfo(stockCode)
|
||||||
@ -212,8 +215,8 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
|
|||||||
scanner := bufio.NewScanner(resp.RawBody())
|
scanner := bufio.NewScanner(resp.RawBody())
|
||||||
for scanner.Scan() {
|
for scanner.Scan() {
|
||||||
line := scanner.Text()
|
line := scanner.Text()
|
||||||
//logger.SugaredLogger.Infof("Received data: %s", line)
|
logger.SugaredLogger.Infof("Received data: %s", line)
|
||||||
if strings.HasPrefix(line, "data: ") {
|
if strings.HasPrefix(line, "chat data: ") {
|
||||||
data := strings.TrimPrefix(line, "data: ")
|
data := strings.TrimPrefix(line, "data: ")
|
||||||
if data == "[DONE]" {
|
if data == "[DONE]" {
|
||||||
return
|
return
|
||||||
@ -247,6 +250,7 @@ func (o OpenAi) NewCommonChatStream(stock, stockCode, apiURL, apiKey, Model stri
|
|||||||
client := resty.New()
|
client := resty.New()
|
||||||
client.SetHeader("Authorization", "Bearer "+apiKey)
|
client.SetHeader("Authorization", "Bearer "+apiKey)
|
||||||
client.SetHeader("Content-Type", "application/json")
|
client.SetHeader("Content-Type", "application/json")
|
||||||
|
client.SetRetryCount(3)
|
||||||
|
|
||||||
msg := []map[string]interface{}{
|
msg := []map[string]interface{}{
|
||||||
{
|
{
|
||||||
|
@ -561,6 +561,8 @@ func SearchStockInfo(stock, msgType string) *[]string {
|
|||||||
// 创建一个 chromedp 上下文
|
// 创建一个 chromedp 上下文
|
||||||
ctx, cancel := chromedp.NewContext(
|
ctx, cancel := chromedp.NewContext(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
|
chromedp.WithLogf(logger.SugaredLogger.Infof),
|
||||||
|
chromedp.WithErrorf(logger.SugaredLogger.Errorf),
|
||||||
)
|
)
|
||||||
defer cancel()
|
defer cancel()
|
||||||
var htmlContent string
|
var htmlContent string
|
||||||
|
Loading…
x
Reference in New Issue
Block a user