99 "go-stock/backend/logger"
1010 "strings"
1111 "sync"
12+ "time"
1213)
1314
1415// @Author spark
@@ -128,6 +129,8 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
128129 client .SetBaseURL (o .BaseUrl )
129130 client .SetHeader ("Authorization" , "Bearer " + o .ApiKey )
130131 client .SetHeader ("Content-Type" , "application/json" )
132+ client .SetRetryCount (3 )
133+ client .SetTimeout (time .Second * 30 )
131134
132135 msg := []map [string ]interface {}{
133136 {
@@ -139,8 +142,8 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
139142 }
140143
141144 wg := & sync.WaitGroup {}
142-
143145 wg .Add (4 )
146+
144147 go func () {
145148 defer wg .Done ()
146149 messages := SearchStockPriceInfo (stockCode )
@@ -212,8 +215,8 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
212215 scanner := bufio .NewScanner (resp .RawBody ())
213216 for scanner .Scan () {
214217 line := scanner .Text ()
215- // logger.SugaredLogger.Infof("Received data: %s", line)
216- if strings .HasPrefix (line , "data: " ) {
218+ logger .SugaredLogger .Infof ("Received data: %s" , line )
219+ if strings .HasPrefix (line , "chat data: " ) {
217220 data := strings .TrimPrefix (line , "data: " )
218221 if data == "[DONE]" {
219222 return
@@ -247,6 +250,7 @@ func (o OpenAi) NewCommonChatStream(stock, stockCode, apiURL, apiKey, Model stri
247250 client := resty .New ()
248251 client .SetHeader ("Authorization" , "Bearer " + apiKey )
249252 client .SetHeader ("Content-Type" , "application/json" )
253+ client .SetRetryCount (3 )
250254
251255 msg := []map [string ]interface {}{
252256 {
0 commit comments