From 9dd0b1962f8466bb234c9fdb06e6228f857a38a5 Mon Sep 17 00:00:00 2001 From: charleschile Date: Sun, 1 Sep 2024 16:34:28 +0800 Subject: [PATCH 1/7] LLM_EMBEDDING implementation --- pkg/frontend/variables.go | 24 +++ pkg/sql/plan/function/func_llm.go | 238 ++++++++++++++++++++++++++ pkg/sql/plan/function/function_id.go | 3 + pkg/sql/plan/function/list_builtIn.go | 31 ++++ 4 files changed, 296 insertions(+) create mode 100644 pkg/sql/plan/function/func_llm.go diff --git a/pkg/frontend/variables.go b/pkg/frontend/variables.go index 81643fdf972f1..f06e6895aa039 100644 --- a/pkg/frontend/variables.go +++ b/pkg/frontend/variables.go @@ -3509,6 +3509,30 @@ var gSysVarsDefs = map[string]SystemVariable{ Type: InitSystemVariableBoolType("experimental_ivf_index"), Default: int64(0), }, + "llm_embedding_model": { + Name: "llm_embedding_model", + Scope: ScopeBoth, + Dynamic: true, + SetVarHintApplies: false, + Type: InitSystemVariableStringType("llm_embedding_model"), + Default: "ollama", + }, + "ollama_server_proxy": { + Name: "ollama_server_proxy", + Scope: ScopeBoth, + Dynamic: true, + SetVarHintApplies: false, + Type: InitSystemVariableStringType("ollama_server_proxy"), + Default: "http://localhost:11434/api/embed", + }, + "ollama_model": { + Name: "ollama_model", + Scope: ScopeBoth, + Dynamic: true, + SetVarHintApplies: false, + Type: InitSystemVariableStringType("ollama_model"), + Default: "llama3", + }, "disable_agg_statement": { Name: "disable_agg_statement", Scope: ScopeSession, diff --git a/pkg/sql/plan/function/func_llm.go b/pkg/sql/plan/function/func_llm.go new file mode 100644 index 0000000000000..b1d6dd3826a0d --- /dev/null +++ b/pkg/sql/plan/function/func_llm.go @@ -0,0 +1,238 @@ +package function + +import ( + "bytes" + "encoding/json" + "fmt" + "github.com/matrixorigin/matrixone/pkg/common/util" + "github.com/matrixorigin/matrixone/pkg/container/types" + "github.com/matrixorigin/matrixone/pkg/container/vector" + "github.com/matrixorigin/matrixone/pkg/vm/process" + "io" + "net/http" +) + +type OllamaSingleEmbeddingRequest struct { + Model string `json:"model"` + Input string `json:"input"` +} + +type OllamaMultipleEmbeddingRequest struct { + Model string `json:"model"` + Input []string `json:"input"` +} + +type OllamaEmbeddingResponse struct { + Model string `json:"model"` + Embeddings [][]float32 `json:"embeddings"` + TotalDuration int64 `json:"total_duration"` + LoadDuration int64 `json:"load_duration"` + PromptEvalCount int `json:"prompt_eval_count"` +} + +// Prepare & send the HTTP request, read the response body, return embeddings +func callOllamaService(requestBody []byte, proxy string) ([][]float32, error) { + // Prepare & send the HTTP request + req, err := http.NewRequest("POST", proxy, bytes.NewBuffer(requestBody)) + if err != nil { + return nil, fmt.Errorf("failed to create HTTP request: %v", err) + } + req.Header.Set("Content-Type", "application/json") + + client := &http.Client{} + resp, err := client.Do(req) + if err != nil { + return nil, fmt.Errorf("failed to send HTTP request: %v", err) + } + defer resp.Body.Close() + + // Check the status code + if resp.StatusCode != http.StatusOK { + bodyBytes, _ := io.ReadAll(resp.Body) + return nil, fmt.Errorf("received non-200 response: %d, body: %s", resp.StatusCode, string(bodyBytes)) + } + + // Read the response body + body, err := io.ReadAll(resp.Body) + if err != nil { + return nil, fmt.Errorf("failed to read response body: %v", err) + } + + var embeddingResponse OllamaEmbeddingResponse + err = json.Unmarshal(body, &embeddingResponse) + if err != nil { + return nil, fmt.Errorf("failed to unmarshal response body: %v", err) + } + + return embeddingResponse.Embeddings, nil +} + +// take single input, make a POST request to Ollama API and return embedding +func getOllamaSingleEmbedding(input string, model string, proxy string) ([]float32, error) { + payload := OllamaSingleEmbeddingRequest{ + Model: model, + Input: input, + } + + // Marshal the payload to JSON + requestBody, err := json.Marshal(payload) + if err != nil { + return nil, fmt.Errorf("failed to marshal request body: %v", err) + } + + embeddings, err := callOllamaService(requestBody, proxy) + + return embeddings[0], nil +} + +// Embedding function +func EmbeddingOp(parameters []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, selectList *FunctionSelectList) error { + source := vector.GenerateFunctionStrParameter(parameters[0]) + rs := vector.MustFunctionResult[types.Varlena](result) + + rowCount := uint64(length) + for i := uint64(0); i < rowCount; i++ { + inputBytes, nullInput := source.GetStrValue(i) + if nullInput { + if err := rs.AppendMustNullForBytesResult(); err != nil { + return err + } + continue + } + + model, err := proc.GetResolveVariableFunc()("llm_embedding_model", true, false) + if err != nil { + return err + } + modelStr, ok := model.(string) + if !ok { + return fmt.Errorf("unexpected type for llm_embedding_model: %T", model) + } + + proxy, err1 := proc.GetResolveVariableFunc()("ollama_server_proxy", true, false) + if err1 != nil { + return err1 + } + proxyStr, ok := proxy.(string) + if !ok { + return fmt.Errorf("unexpected type for llm_embedding_model: %T", proxy) + } + + ollamaModel, err1 := proc.GetResolveVariableFunc()("ollama_model", true, false) + if err1 != nil { + return err1 + } + ollamaModelStr, ok := ollamaModel.(string) + if !ok { + return fmt.Errorf("unexpected type for llm_embedding_model: %T", ollamaModel) + } + + input := string(inputBytes) + var embeddingBytes []byte + switch modelStr { + case "ollama": + embedding, err := getOllamaSingleEmbedding(input, ollamaModelStr, proxyStr) + if err != nil { + return err + } + embeddingBytes = types.ArrayToBytes[float32](embedding) + default: + return fmt.Errorf("unsupported embedding model: %s", modelStr) + } + + if err := rs.AppendBytes(embeddingBytes, false); err != nil { + return err + } + } + return nil + +} + +// Embedding function +func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, selectList *FunctionSelectList) error { + source := vector.GenerateFunctionStrParameter(parameters[0]) + rs := vector.MustFunctionResult[types.Varlena](result) + + proxy, err1 := proc.GetResolveVariableFunc()("ollama_server_proxy", true, false) + if err1 != nil { + return err1 + } + proxyStr, ok := proxy.(string) + if !ok { + return fmt.Errorf("unexpected type for llm_embedding_model: %T", proxy) + } + + ollamaModel, err1 := proc.GetResolveVariableFunc()("ollama_model", true, false) + if err1 != nil { + return err1 + } + ollamaModelStr, ok := ollamaModel.(string) + if !ok { + return fmt.Errorf("unexpected type for llm_embedding_model: %T", ollamaModel) + } + + rowCount := uint64(length) + for i := uint64(0); i < rowCount; i++ { + inputBytes, nullInput := source.GetStrValue(i) + if nullInput { + if err := rs.AppendMustNullForBytesResult(); err != nil { + return err + } + continue + } + + // read file for datalink type + filePath := util.UnsafeBytesToString(inputBytes) + fs := proc.GetFileService() + moUrl, offsetSize, _, err := types.ParseDatalink(filePath) + if err != nil { + return err + } + + r, err := ReadFromFileOffsetSize(moUrl, fs, int64(offsetSize[0]), int64(offsetSize[1])) + if err != nil { + return err + } + defer r.Close() + + fileBytes, err := io.ReadAll(r) + if err != nil { + return err + } + + if len(fileBytes) == 0 { + if err = rs.AppendBytes(nil, true); err != nil { + return err + } + return nil + } + + model, err := proc.GetResolveVariableFunc()("llm_embedding_model", true, false) + if err != nil { + return err + } + modelStr, ok := model.(string) + if !ok { + return fmt.Errorf("unexpected type for llm_embedding_model: %T", model) + } + + input := string(fileBytes) + var embeddingBytes []byte + switch modelStr { + case "ollama": + embedding, err := getOllamaSingleEmbedding(input, ollamaModelStr, proxyStr) + if err != nil { + return err + } + embeddingBytes = types.ArrayToBytes[float32](embedding) + default: + return fmt.Errorf("unsupported embedding model: %s", modelStr) + } + + if err := rs.AppendBytes(embeddingBytes, false); err != nil { + return err + } + } + return nil + +} diff --git a/pkg/sql/plan/function/function_id.go b/pkg/sql/plan/function/function_id.go index 2752b794f04e8..dd43e076a0434 100644 --- a/pkg/sql/plan/function/function_id.go +++ b/pkg/sql/plan/function/function_id.go @@ -386,6 +386,8 @@ const ( BITMAP_CONSTRUCT_AGG BITMAP_OR_AGG + LLM_EMBEDDING + // FUNCTION_END_NUMBER is not a function, just a flag to record the max number of function. // TODO: every one should put the new function id in front of this one if you want to make a new function. FUNCTION_END_NUMBER @@ -700,4 +702,5 @@ var functionIdRegister = map[string]int32{ "bitmap_count": BITMAP_COUNT, "bitmap_construct_agg": BITMAP_CONSTRUCT_AGG, "bitmap_or_agg": BITMAP_OR_AGG, + "llm_embedding": LLM_EMBEDDING, } diff --git a/pkg/sql/plan/function/list_builtIn.go b/pkg/sql/plan/function/list_builtIn.go index 258ce105b43ae..67d6c632e4d50 100644 --- a/pkg/sql/plan/function/list_builtIn.go +++ b/pkg/sql/plan/function/list_builtIn.go @@ -6532,6 +6532,37 @@ var supportedOthersBuiltIns = []FuncNew{ }, }, }, + + // function `LLM_EMBEDDING` + { + functionId: LLM_EMBEDDING, + class: plan.Function_STRICT, + layout: STANDARD_FUNCTION, + checkFn: fixedTypeMatch, + + Overloads: []overload{ + { + overloadId: 0, + args: []types.T{types.T_varchar}, + retType: func(parameters []types.Type) types.Type { + return types.T_array_float32.ToType() + }, + newOp: func() executeLogicOfOverload { + return EmbeddingOp + }, + }, + { + overloadId: 1, + args: []types.T{types.T_datalink}, + retType: func(parameters []types.Type) types.Type { + return types.T_array_float32.ToType() + }, + newOp: func() executeLogicOfOverload { + return EmbeddingDatalinkOp + }, + }, + }, + }, } func MoCtl(ivecs []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, _ *FunctionSelectList) (err error) { From 06e34e5720553d636bb02edb334e0fcfc4622054 Mon Sep 17 00:00:00 2001 From: charleschile Date: Sun, 1 Sep 2024 18:19:40 +0800 Subject: [PATCH 2/7] EmbeddingService interface implementation --- pkg/sql/plan/function/embedding_service.go | 11 +++ pkg/sql/plan/function/func_llm.go | 105 ++++----------------- pkg/sql/plan/function/ollama_service.go | 82 ++++++++++++++++ 3 files changed, 111 insertions(+), 87 deletions(-) create mode 100644 pkg/sql/plan/function/embedding_service.go create mode 100644 pkg/sql/plan/function/ollama_service.go diff --git a/pkg/sql/plan/function/embedding_service.go b/pkg/sql/plan/function/embedding_service.go new file mode 100644 index 0000000000000..7c8720a7d39f3 --- /dev/null +++ b/pkg/sql/plan/function/embedding_service.go @@ -0,0 +1,11 @@ +package function + +type EmbeddingService interface { + GetEmbedding(input string, model string, proxy string) ([]float32, error) +} + +type OllamaEmbeddingService struct{} + +func (o *OllamaEmbeddingService) GetEmbedding(input string, model string, proxy string) ([]float32, error) { + return getOllamaSingleEmbedding(input, model, proxy) +} diff --git a/pkg/sql/plan/function/func_llm.go b/pkg/sql/plan/function/func_llm.go index b1d6dd3826a0d..90c8dfe3bc1e4 100644 --- a/pkg/sql/plan/function/func_llm.go +++ b/pkg/sql/plan/function/func_llm.go @@ -1,95 +1,23 @@ package function import ( - "bytes" - "encoding/json" "fmt" + "github.com/matrixorigin/matrixone/pkg/common/moerr" "github.com/matrixorigin/matrixone/pkg/common/util" "github.com/matrixorigin/matrixone/pkg/container/types" "github.com/matrixorigin/matrixone/pkg/container/vector" "github.com/matrixorigin/matrixone/pkg/vm/process" "io" - "net/http" ) -type OllamaSingleEmbeddingRequest struct { - Model string `json:"model"` - Input string `json:"input"` -} - -type OllamaMultipleEmbeddingRequest struct { - Model string `json:"model"` - Input []string `json:"input"` -} - -type OllamaEmbeddingResponse struct { - Model string `json:"model"` - Embeddings [][]float32 `json:"embeddings"` - TotalDuration int64 `json:"total_duration"` - LoadDuration int64 `json:"load_duration"` - PromptEvalCount int `json:"prompt_eval_count"` -} - -// Prepare & send the HTTP request, read the response body, return embeddings -func callOllamaService(requestBody []byte, proxy string) ([][]float32, error) { - // Prepare & send the HTTP request - req, err := http.NewRequest("POST", proxy, bytes.NewBuffer(requestBody)) - if err != nil { - return nil, fmt.Errorf("failed to create HTTP request: %v", err) - } - req.Header.Set("Content-Type", "application/json") - - client := &http.Client{} - resp, err := client.Do(req) - if err != nil { - return nil, fmt.Errorf("failed to send HTTP request: %v", err) - } - defer resp.Body.Close() - - // Check the status code - if resp.StatusCode != http.StatusOK { - bodyBytes, _ := io.ReadAll(resp.Body) - return nil, fmt.Errorf("received non-200 response: %d, body: %s", resp.StatusCode, string(bodyBytes)) - } - - // Read the response body - body, err := io.ReadAll(resp.Body) - if err != nil { - return nil, fmt.Errorf("failed to read response body: %v", err) - } - - var embeddingResponse OllamaEmbeddingResponse - err = json.Unmarshal(body, &embeddingResponse) - if err != nil { - return nil, fmt.Errorf("failed to unmarshal response body: %v", err) - } - - return embeddingResponse.Embeddings, nil -} - -// take single input, make a POST request to Ollama API and return embedding -func getOllamaSingleEmbedding(input string, model string, proxy string) ([]float32, error) { - payload := OllamaSingleEmbeddingRequest{ - Model: model, - Input: input, - } - - // Marshal the payload to JSON - requestBody, err := json.Marshal(payload) - if err != nil { - return nil, fmt.Errorf("failed to marshal request body: %v", err) - } - - embeddings, err := callOllamaService(requestBody, proxy) - - return embeddings[0], nil -} - // Embedding function func EmbeddingOp(parameters []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, selectList *FunctionSelectList) error { source := vector.GenerateFunctionStrParameter(parameters[0]) rs := vector.MustFunctionResult[types.Varlena](result) + // Initialize the Ollama embedding service + embeddingService := &OllamaEmbeddingService{} + rowCount := uint64(length) for i := uint64(0); i < rowCount; i++ { inputBytes, nullInput := source.GetStrValue(i) @@ -131,7 +59,7 @@ func EmbeddingOp(parameters []*vector.Vector, result vector.FunctionResultWrappe var embeddingBytes []byte switch modelStr { case "ollama": - embedding, err := getOllamaSingleEmbedding(input, ollamaModelStr, proxyStr) + embedding, err := embeddingService.GetEmbedding(input, ollamaModelStr, proxyStr) if err != nil { return err } @@ -153,13 +81,16 @@ func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResu source := vector.GenerateFunctionStrParameter(parameters[0]) rs := vector.MustFunctionResult[types.Varlena](result) - proxy, err1 := proc.GetResolveVariableFunc()("ollama_server_proxy", true, false) - if err1 != nil { - return err1 + // Initialize the Ollama embedding service + embeddingService := &OllamaEmbeddingService{} + + proxy, err := proc.GetResolveVariableFunc()("ollama_server_proxy", true, false) + if err != nil { + return err } proxyStr, ok := proxy.(string) if !ok { - return fmt.Errorf("unexpected type for llm_embedding_model: %T", proxy) + return moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_model: %T", proxy) } ollamaModel, err1 := proc.GetResolveVariableFunc()("ollama_model", true, false) @@ -168,7 +99,7 @@ func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResu } ollamaModelStr, ok := ollamaModel.(string) if !ok { - return fmt.Errorf("unexpected type for llm_embedding_model: %T", ollamaModel) + return moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_model: %T", ollamaModel) } rowCount := uint64(length) @@ -184,12 +115,12 @@ func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResu // read file for datalink type filePath := util.UnsafeBytesToString(inputBytes) fs := proc.GetFileService() - moUrl, offsetSize, _, err := types.ParseDatalink(filePath) + moUrl, _, _, err := types.ParseDatalink(filePath) if err != nil { return err } - r, err := ReadFromFileOffsetSize(moUrl, fs, int64(offsetSize[0]), int64(offsetSize[1])) + r, err := ReadFromFileOffsetSize(moUrl, fs, 0, -1) if err != nil { return err } @@ -213,20 +144,20 @@ func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResu } modelStr, ok := model.(string) if !ok { - return fmt.Errorf("unexpected type for llm_embedding_model: %T", model) + return moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_model: %T", model) } input := string(fileBytes) var embeddingBytes []byte switch modelStr { case "ollama": - embedding, err := getOllamaSingleEmbedding(input, ollamaModelStr, proxyStr) + embedding, err := embeddingService.GetEmbedding(input, ollamaModelStr, proxyStr) if err != nil { return err } embeddingBytes = types.ArrayToBytes[float32](embedding) default: - return fmt.Errorf("unsupported embedding model: %s", modelStr) + return moerr.NewInvalidInputf(proc.Ctx, "unsupported embedding model: %s", modelStr) } if err := rs.AppendBytes(embeddingBytes, false); err != nil { diff --git a/pkg/sql/plan/function/ollama_service.go b/pkg/sql/plan/function/ollama_service.go new file mode 100644 index 0000000000000..d7d6f40c15e99 --- /dev/null +++ b/pkg/sql/plan/function/ollama_service.go @@ -0,0 +1,82 @@ +package function + +import ( + "bytes" + "encoding/json" + "fmt" + "io" + "net/http" +) + +type OllamaSingleEmbeddingRequest struct { + Model string `json:"model"` + Input string `json:"input"` +} + +type OllamaMultipleEmbeddingRequest struct { + Model string `json:"model"` + Input []string `json:"input"` +} + +type OllamaEmbeddingResponse struct { + Model string `json:"model"` + Embeddings [][]float32 `json:"embeddings"` + TotalDuration int64 `json:"total_duration"` + LoadDuration int64 `json:"load_duration"` + PromptEvalCount int `json:"prompt_eval_count"` +} + +// Prepare & send the HTTP request, read the response body, return embeddings +func callOllamaService(requestBody []byte, proxy string) ([][]float32, error) { + // Prepare & send the HTTP request + req, err := http.NewRequest("POST", proxy, bytes.NewBuffer(requestBody)) + if err != nil { + return nil, fmt.Errorf("failed to create HTTP request: %v", err) + } + req.Header.Set("Content-Type", "application/json") + + client := &http.Client{} + resp, err := client.Do(req) + if err != nil { + return nil, fmt.Errorf("failed to send HTTP request: %v", err) + } + defer resp.Body.Close() + + // Check the status code + if resp.StatusCode != http.StatusOK { + bodyBytes, _ := io.ReadAll(resp.Body) + return nil, fmt.Errorf("received non-200 response: %d, body: %s", resp.StatusCode, string(bodyBytes)) + } + + // Read the response body + body, err := io.ReadAll(resp.Body) + if err != nil { + return nil, fmt.Errorf("failed to read response body: %v", err) + } + + var embeddingResponse OllamaEmbeddingResponse + err = json.Unmarshal(body, &embeddingResponse) + if err != nil { + return nil, fmt.Errorf("failed to unmarshal response body: %v", err) + } + + return embeddingResponse.Embeddings, nil +} + +// take single input, make a POST request to Ollama API and return embedding +func getOllamaSingleEmbedding(input string, model string, proxy string) ([]float32, error) { + payload := OllamaSingleEmbeddingRequest{ + Model: model, + Input: input, + } + + // Marshal the payload to JSON + requestBody, err := json.Marshal(payload) + if err != nil { + return nil, fmt.Errorf("failed to marshal request body: %v", err) + } + + embeddings, err := callOllamaService(requestBody, proxy) + + return embeddings[0], nil +} From 311707bcad125a4872f260cf64ea0f8290e90651 Mon Sep 17 00:00:00 2001 From: charleschile Date: Tue, 3 Sep 2024 22:29:51 +0800 Subject: [PATCH 3/7] fix hardcode about Ollama --- pkg/frontend/variables.go | 18 ++-- pkg/sql/plan/function/embedding_service.go | 45 ++++++++++ pkg/sql/plan/function/func_llm.go | 96 ++++++---------------- pkg/sql/plan/function/ollama_service.go | 14 ++-- 4 files changed, 84 insertions(+), 89 deletions(-) diff --git a/pkg/frontend/variables.go b/pkg/frontend/variables.go index f06e6895aa039..1c3a1d81aaf76 100644 --- a/pkg/frontend/variables.go +++ b/pkg/frontend/variables.go @@ -3509,28 +3509,28 @@ var gSysVarsDefs = map[string]SystemVariable{ Type: InitSystemVariableBoolType("experimental_ivf_index"), Default: int64(0), }, - "llm_embedding_model": { - Name: "llm_embedding_model", + "llm_embedding_platform": { + Name: "llm_embedding_platform", Scope: ScopeBoth, Dynamic: true, SetVarHintApplies: false, - Type: InitSystemVariableStringType("llm_embedding_model"), + Type: InitSystemVariableStringType("llm_embedding_platform"), Default: "ollama", }, - "ollama_server_proxy": { - Name: "ollama_server_proxy", + "llm_server_proxy": { + Name: "llm_server_proxy", Scope: ScopeBoth, Dynamic: true, SetVarHintApplies: false, - Type: InitSystemVariableStringType("ollama_server_proxy"), + Type: InitSystemVariableStringType("llm_server_proxy"), Default: "http://localhost:11434/api/embed", }, - "ollama_model": { - Name: "ollama_model", + "llm_model": { + Name: "llm_model", Scope: ScopeBoth, Dynamic: true, SetVarHintApplies: false, - Type: InitSystemVariableStringType("ollama_model"), + Type: InitSystemVariableStringType("llm_model"), Default: "llama3", }, "disable_agg_statement": { diff --git a/pkg/sql/plan/function/embedding_service.go b/pkg/sql/plan/function/embedding_service.go index 7c8720a7d39f3..d8ee90efcc2e9 100644 --- a/pkg/sql/plan/function/embedding_service.go +++ b/pkg/sql/plan/function/embedding_service.go @@ -1,5 +1,10 @@ package function +import ( + "github.com/matrixorigin/matrixone/pkg/common/moerr" + "github.com/matrixorigin/matrixone/pkg/vm/process" +) + type EmbeddingService interface { GetEmbedding(input string, model string, proxy string) ([]float32, error) } @@ -9,3 +14,43 @@ type OllamaEmbeddingService struct{} func (o *OllamaEmbeddingService) GetEmbedding(input string, model string, proxy string) ([]float32, error) { return getOllamaSingleEmbedding(input, model, proxy) } + +func NewEmbeddingService(modelStr string) (EmbeddingService, error) { + switch modelStr { + case "ollama": + return &OllamaEmbeddingService{}, nil + default: + return nil, moerr.NewInvalidInputNoCtxf("'%s' is not a valid chunk strategy", modelStr) + } +} + +func getLLMGlobalVariable(proc *process.Process) (string, string, string, error) { + platform, err := proc.GetResolveVariableFunc()("llm_embedding_platform", true, false) + if err != nil { + return "", "", "", err + } + platformStr, ok := platform.(string) + if !ok { + return "", "", "", moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_platform: %T", platform) + } + + proxy, err1 := proc.GetResolveVariableFunc()("llm_server_proxy", true, false) + if err1 != nil { + return "", "", "", err1 + } + proxyStr, ok := proxy.(string) + if !ok { + return "", "", "", moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_server_proxy: %T", proxy) + } + + llmModel, err1 := proc.GetResolveVariableFunc()("llm_model", true, false) + if err1 != nil { + return "", "", "", err1 + } + llmModelStr, ok := llmModel.(string) + if !ok { + return "", "", "", moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_model: %T", llmModel) + } + + return platformStr, proxyStr, llmModelStr, nil +} diff --git a/pkg/sql/plan/function/func_llm.go b/pkg/sql/plan/function/func_llm.go index 90c8dfe3bc1e4..ae33b2aafb8e2 100644 --- a/pkg/sql/plan/function/func_llm.go +++ b/pkg/sql/plan/function/func_llm.go @@ -1,8 +1,6 @@ package function import ( - "fmt" - "github.com/matrixorigin/matrixone/pkg/common/moerr" "github.com/matrixorigin/matrixone/pkg/common/util" "github.com/matrixorigin/matrixone/pkg/container/types" "github.com/matrixorigin/matrixone/pkg/container/vector" @@ -15,8 +13,15 @@ func EmbeddingOp(parameters []*vector.Vector, result vector.FunctionResultWrappe source := vector.GenerateFunctionStrParameter(parameters[0]) rs := vector.MustFunctionResult[types.Varlena](result) - // Initialize the Ollama embedding service - embeddingService := &OllamaEmbeddingService{} + platformStr, proxyStr, llmModelStr, err := getLLMGlobalVariable(proc) + if err != nil { + return err + } + + embeddingService, err := NewEmbeddingService(platformStr) + if err != nil { + return err + } rowCount := uint64(length) for i := uint64(0); i < rowCount; i++ { @@ -28,45 +33,14 @@ func EmbeddingOp(parameters []*vector.Vector, result vector.FunctionResultWrappe continue } - model, err := proc.GetResolveVariableFunc()("llm_embedding_model", true, false) - if err != nil { - return err - } - modelStr, ok := model.(string) - if !ok { - return fmt.Errorf("unexpected type for llm_embedding_model: %T", model) - } - - proxy, err1 := proc.GetResolveVariableFunc()("ollama_server_proxy", true, false) - if err1 != nil { - return err1 - } - proxyStr, ok := proxy.(string) - if !ok { - return fmt.Errorf("unexpected type for llm_embedding_model: %T", proxy) - } - - ollamaModel, err1 := proc.GetResolveVariableFunc()("ollama_model", true, false) - if err1 != nil { - return err1 - } - ollamaModelStr, ok := ollamaModel.(string) - if !ok { - return fmt.Errorf("unexpected type for llm_embedding_model: %T", ollamaModel) - } - input := string(inputBytes) var embeddingBytes []byte - switch modelStr { - case "ollama": - embedding, err := embeddingService.GetEmbedding(input, ollamaModelStr, proxyStr) - if err != nil { - return err - } - embeddingBytes = types.ArrayToBytes[float32](embedding) - default: - return fmt.Errorf("unsupported embedding model: %s", modelStr) + + embedding, err := embeddingService.GetEmbedding(input, llmModelStr, proxyStr) + if err != nil { + return err } + embeddingBytes = types.ArrayToBytes[float32](embedding) if err := rs.AppendBytes(embeddingBytes, false); err != nil { return err @@ -81,25 +55,14 @@ func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResu source := vector.GenerateFunctionStrParameter(parameters[0]) rs := vector.MustFunctionResult[types.Varlena](result) - // Initialize the Ollama embedding service - embeddingService := &OllamaEmbeddingService{} - - proxy, err := proc.GetResolveVariableFunc()("ollama_server_proxy", true, false) + platformStr, proxyStr, llmModelStr, err := getLLMGlobalVariable(proc) if err != nil { return err } - proxyStr, ok := proxy.(string) - if !ok { - return moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_model: %T", proxy) - } - ollamaModel, err1 := proc.GetResolveVariableFunc()("ollama_model", true, false) - if err1 != nil { - return err1 - } - ollamaModelStr, ok := ollamaModel.(string) - if !ok { - return moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_model: %T", ollamaModel) + embeddingService, err := NewEmbeddingService(platformStr) + if err != nil { + return err } rowCount := uint64(length) @@ -138,27 +101,14 @@ func EmbeddingDatalinkOp(parameters []*vector.Vector, result vector.FunctionResu return nil } - model, err := proc.GetResolveVariableFunc()("llm_embedding_model", true, false) - if err != nil { - return err - } - modelStr, ok := model.(string) - if !ok { - return moerr.NewInvalidInputf(proc.Ctx, "unexpected type for llm_embedding_model: %T", model) - } - input := string(fileBytes) var embeddingBytes []byte - switch modelStr { - case "ollama": - embedding, err := embeddingService.GetEmbedding(input, ollamaModelStr, proxyStr) - if err != nil { - return err - } - embeddingBytes = types.ArrayToBytes[float32](embedding) - default: - return moerr.NewInvalidInputf(proc.Ctx, "unsupported embedding model: %s", modelStr) + + embedding, err := embeddingService.GetEmbedding(input, llmModelStr, proxyStr) + if err != nil { + return err } + embeddingBytes = types.ArrayToBytes[float32](embedding) if err := rs.AppendBytes(embeddingBytes, false); err != nil { return err diff --git a/pkg/sql/plan/function/ollama_service.go b/pkg/sql/plan/function/ollama_service.go index d7d6f40c15e99..06cc3c10a2825 100644 --- a/pkg/sql/plan/function/ollama_service.go +++ b/pkg/sql/plan/function/ollama_service.go @@ -3,7 +3,7 @@ package function import ( "bytes" "encoding/json" - "fmt" + "github.com/matrixorigin/matrixone/pkg/common/moerr" "io" "net/http" ) @@ -31,33 +31,33 @@ func callOllamaService(requestBody []byte, proxy string) ([][]float32, error) { // Prepare & send the HTTP request req, err := http.NewRequest("POST", proxy, bytes.NewBuffer(requestBody)) if err != nil { - return nil, fmt.Errorf("failed to create HTTP request: %v", err) + return nil, moerr.NewInvalidInputNoCtxf("failed to create HTTP request: %v", err) } req.Header.Set("Content-Type", "application/json") client := &http.Client{} resp, err := client.Do(req) if err != nil { - return nil, fmt.Errorf("failed to send HTTP request: %v", err) + return nil, moerr.NewInvalidInputNoCtxf("failed to send HTTP request: %v", err) } defer resp.Body.Close() // Check the status code if resp.StatusCode != http.StatusOK { bodyBytes, _ := io.ReadAll(resp.Body) - return nil, fmt.Errorf("received non-200 response: %d, body: %s", resp.StatusCode, string(bodyBytes)) + return nil, moerr.NewInvalidInputNoCtxf("received non-200 response: %d, body: %s", resp.StatusCode, string(bodyBytes)) } // Read the response body body, err := io.ReadAll(resp.Body) if err != nil { - return nil, fmt.Errorf("failed to read response body: %v", err) + return nil, moerr.NewInvalidInputNoCtxf("failed to read response body: %v", err) } var embeddingResponse OllamaEmbeddingResponse err = json.Unmarshal(body, &embeddingResponse) if err != nil { - return nil, fmt.Errorf("failed to unmarshal response body: %v", err) + return nil, moerr.NewInvalidInputNoCtxf("failed to unmarshal response body: %v", err) } return embeddingResponse.Embeddings, nil @@ -73,7 +73,7 @@ func getOllamaSingleEmbedding(input string, model string, proxy string) ([]float // Marshal the payload to JSON requestBody, err := json.Marshal(payload) if err != nil { - return nil, fmt.Errorf("failed to marshal request body: %v", err) + return nil, moerr.NewInvalidInputNoCtxf("failed to marshal request body: %v", err) } embeddings, err := callOllamaService(requestBody, proxy) From 6da3eb38f4f9138533742d9a218aa9556db6980b Mon Sep 17 00:00:00 2001 From: charleschile Date: Mon, 9 Sep 2024 22:09:29 +0800 Subject: [PATCH 4/7] add BVT tests --- test/distributed/cases/function/func_llm_embedding.result | 6 ++++++ test/distributed/cases/function/func_llm_embedding.sql | 2 ++ test/distributed/resources/llm_test/embedding.txt | 1 + 3 files changed, 9 insertions(+) create mode 100644 test/distributed/cases/function/func_llm_embedding.result create mode 100644 test/distributed/cases/function/func_llm_embedding.sql create mode 100644 test/distributed/resources/llm_test/embedding.txt diff --git a/test/distributed/cases/function/func_llm_embedding.result b/test/distributed/cases/function/func_llm_embedding.result new file mode 100644 index 0000000000000..3a30848dfd9a2 --- /dev/null +++ b/test/distributed/cases/function/func_llm_embedding.result @@ -0,0 +1,6 @@ +SELECT llm_embedding("This is text... bla "); +llm_embedding(This is text... bla ) +[-0.021955958, -0.024112409, 0.010994452, -0.011615187, 0.03107838, -0.024938945, -0.029811664, -0.018000955, -0.01751671, -0.0007840055, -0.021467123, -0.014996716, -0.0045815744, -0.026652282, -0.016832603, 0.009745739, -0.016642446, 0.00514828, -0.015859831, -0.010222016, -0.010362088, 0.0056358385, -0.015048031, -0.0031982209, -0.010094931, 0.016682236, 0.008610655, -0.010177104, 0.0035889482, -0.011772896, 0.0020790452, 0.0064958483, 0.007662446, -0.011871371, -0.0060495464, -0.00031009244, 0.01244862, 0.017252011, 0.0045427964, -0.0020739902, -0.010757486, 0.007304529, 0.0013274339, 0.014101962, 0.008301316, 0.029145958, 0.0059295893, 0.008040844, 0.007543537, -0.016788509, 0.02117831, -0.014382508, 0.0048556137, 0.0018720219, 0.0025224255, -0.017484922, -0.009047812, -0.004784566, 0.011001231, 0.001979824, -0.018123543, -0.006044478, -0.017557709, 0.0064400537, 0.031730548, 0.012659235, 0.0018322447, 0.0010248604, -0.0063489038, 0.008556809, -0.025164645, 0.0020938488, 0.002503912, 0.004343821, -0.004806065, -0.016200012, 0.013988646, -0.001762432, -0.009467125, -0.0026530595, -0.02285559, 0.018910365, 0.0032985576, -0.014895749, -0.0032209384, 0.00066495646, 0.018467078, 0.013180945, 0.027700555, -0.00892321, 0.018167712, -0.0055163656, -0.0067893127, -0.0148088075, 0.011647559, -0.010386176, 0.017616654, -0.016375579, -0.0059830374, -0.013574454, -0.0011587754, 0.017854352, 0.009558709, 0.03177031, -0.016512847, 0.012346981, 0.024569793, -0.008568929, -0.008977197, 0.0049745953, -0.0035037443, 0.0062740296, -0.013347865, -0.0048455335, -0.00947347, -0.0186149, -0.013720566, 0.020388164, 0.0067055165, 0.02716808, 0.019495538, 0.015608861, -0.0069132647, 0.011870762, -0.017110685, -0.0044163014, 0.027169967, 0.016619323, 0.043965526, 0.0010070957, 0.00588191, -0.006821795, 0.0029744068, -0.02090374, 0.0090806065, 0.0059192227, -0.014213187, 0.018322522, -0.008240031, -0.01576897, 0.0005875202, -0.0004314609, 0.011276895, 0.0133925, 0.006008923, -0.007348644, -0.008733263, -0.0030368967, 0.030700514, -0.025163442, 0.029363861, 0.014590908, 0.021085236, -0.011104404, -0.022099275, 0.0143173225, 0.0012046895, -0.01608151, -0.014419335, -0.004113009, 0.0016428409, 0.011147418, 0.0060133194, 0.0055229077, 0.00668409, 0.018997602, -0.0029479868, 0.008442573, -0.020896008, -0.0037291164, -0.024765892, 0.015060678, 0.029370368, -0.0010357525, 0.0049831257, -0.011261099, -0.013739087, 0.044590533, 0.001162745, 0.025493084, 0.0062676133, 0.022893438, 0.0042007635, 0.0054039843, -0.031885598, 0.0064190817, -0.016837684, 0.008460254, -0.0028312034, 0.003459366, 0.004236076, -0.023662303, -0.0005296986, 0.031000057, 0.015816644, -0.0020913233, -0.0041961847, -0.00778315, -0.01452117, 0.00021972816, -0.0019935837, 0.009899315, -0.023027638, -0.007821907, -0.0063062147, 0.011977543, 0.00040162192, -0.024744155, -0.0129168155, -0.0015326833, 0.016515004, 0.01676422, -0.02011962, -0.0150525225, 0.027267167, 0.032580465, -0.0023308718, 0.0020269847, 0.0011390615, 0.007163826, 0.028634854, -0.006309947, 0.013062011, -0.011996805, -0.020130314, 0.0076689627, 0.0087872865, 0.007851165, -0.013061091, 0.04267848, 0.007071549, 0.03381668, 0.000031815776, 0.0125218015, -0.006769284, 0.00495695, -0.0054701823, 0.026578967, -0.0045617674, 0.011082841, -0.0018900802, 0.004628099, 0.0040633986, 0.0036100105, 0.010143743, -0.018468685, -0.0016826128, 0.027931262, -0.0076538366, 0.0067186914, -0.016996909, -0.007044107, 0.0009204443, -0.004973405, -0.0044928314, 0.011293968, -0.0011603358, -0.025184643, 0.0031888485, 0.025241656, -0.014441112, 0.015106308, 0.0019879283, 0.006288269, 0.003611586, -0.014960857, -0.014449708, -0.015573862, -0.012051056, 0.011348667, -0.012265347, -0.004987733, 0.012279564, -0.012861947, 0.0022352627, -0.015725033, 0.0011230859, 0.05116814, 0.011448459, 0.010978957, -0.015474335, 0.055740412, -0.0014891246, 0.0029775708, -0.012443402, -0.012291113, 0.013365482, -0.0046527577, 0.021232648, -0.018799884, -0.0016732217, 0.0078065773, 0.03457722, 0.0063071554, 0.00040213563, -0.0039982023, 0.011821282, 0.0020308201, -0.0035298155, -0.023360932, -0.01194743, -0.015073529, -0.0020111324, 0.0019022666, 0.036552403, -0.0034664366, 0.01524078, 0.019161634, -0.005447126, 0.010698744, 0.0048208525, 0.027015673, -0.011280972, 0.012382409, 0.0031957102, -0.0009891662, -0.002077141, 0.006611531, -0.010195573, -0.017164454, 0.06607552, -0.007741642, -0.0077565564, -0.00397164, -0.003115766, -0.005808385, 0.008120414, 0.0075109866, -0.021332407, -0.030565144, 0.0022836, 0.01687146, -0.02104161, 0.005102496, 0.012411423, 0.0050991056, 0.005249938, 0.005480038, 0.00001042351, 0.011392932, 0.0013273751, -0.01319383, -0.015217519, 0.007903439, -0.011142062, -0.0034155583, -0.011581272, -0.0046569873, 0.014914816, -0.017650869, -0.000117309704, -0.0077963606, -0.008024136, -0.015238717, 0.0046499413, 0.014624952, 0.0050815744, -0.006709254, -0.004673591, -0.0014365719, -0.016261226, 0.012930387, 0.0053507728, -0.023763591, -0.018125547, -0.0053932676, 0.027573505, 0.011143846, -0.01925579, -0.009917108, 0.022185512, -0.0032105392, 0.011380804, 0.03130053, 0.0062829372, -0.009852959, -0.006929876, 0.0026838358, 0.016545653, 0.0011237254, -0.0051492057, -0.0060320287, -0.023093542, -0.016362784, 0.023877516, -0.016849698, -0.00019019004, -0.015760401, -0.006325622, 0.024402106, 0.008419061, -0.012604045, -0.018397756, -0.027029615, -0.034182563, 0.004275695, -0.018512255, 0.015223738, -0.002298939, 0.01057648, 0.0038791338, 0.0015043914, -0.031966858, -0.02935397, 0.0036637217, 0.010142434, 0.032211915, -0.016711973, -0.011719896, -0.0014231665, 0.006420671, 0.005248146, 0.02440263, -0.0031118998, 0.024492072, 0.006618455, -0.0020989038, -0.0067302184, -0.02032872, -0.0022487575, 0.013951547, 0.018667594, -0.010286443, -0.015299047, -0.019201495, 0.009147032, 0.017074488, 0.003679838, -0.015142681, 0.004803891, 0.010780977, 0.0062028817, 0.0018141051, 0.002153185, -0.0031887984, 0.02326359, 0.000854016, -0.02218024, -0.017870624, 0.010544586, 0.010627926, 0.028923651, -0.009599587, -0.009246762, 0.024305006, 0.012272373, 0.023647783, -0.012429135, -0.008228059, -0.014298729, -0.009483858, -0.009582769, 0.015137394, -0.006105718, 0.011186852, 0.0062086685, -0.006783909, 0.019086264, -0.058913767, -0.0069856965, -0.0070017027, 0.020458532, -0.018540531, 0.013970624, -0.0036587755, -0.029031549, -0.015737504, -0.007601849, -0.001232314, 0.018283414, -0.009214379, 0.007501297, -0.0120324185, 0.0013568954, -0.011704797, -0.011073093, -0.004347851, -0.0009535615, -0.0148813175, 0.005931461, 0.010091611, 0.01229224, -0.02499653, -0.0036683804, -0.004759539, -0.0017088536, 0.012689344, -0.010638765, -0.0055148145, -0.009323423, -0.0014303837, 0.01643444, 0.016772497, -0.008381587, 0.010930613, -0.009701353, -0.008236038, -0.006485983, -0.003168949, -0.0000322141, 0.02364691, -0.01376722, 0.0012259972, -0.001628085, 0.030767277, 0.0035013559, 0.024096621, 0.0060895598, -0.0006866059, -0.0011966157, -0.006384428, 0.005663016, -0.031977672, 0.02800659, 0.018354602, -0.012901922, -0.022800632, -0.01239031, -0.0014819846, -0.022010393, -0.0015128284, 0.005966662, -0.009738945, 0.0015486861, 0.0073063537, 0.016023336, 0.018787991, 0.0017969445, 0.004550849, 0.00949244, -0.020368455, -0.0018723144, 0.00023575054, -0.010045346, 0.0008747041, 0.005387957, 0.021194745, 0.0070175175, -0.018594166, -0.030562403, 0.017014429, 0.022430953, 0.0036623972, -0.010982005, 0.007840499, 0.008740815, -0.031675234, 0.011605726, 0.0077475635, 0.008794924, -0.0060337605, 0.014265757, 0.002066351, -0.010989392, 0.014462804, 0.014716118, -0.0114536565, -0.016116548, -0.0014285949, -0.0078055635, -0.011100529, -0.00040516647, 0.00943216, 0.0055793347, -0.0049571153, -0.019806359, -0.0023900769, -0.011680982, -0.0036949096, 0.006917613, -0.010182811, 0.023671664, 0.022915492, 0.020284899, -0.016762791, 0.023048472, -0.025670018, 0.0034855993, -0.038534023, 0.018547582, -0.0039012684, -0.014674778, 0.006229609, 0.008214843, -0.029004078, -0.0046536284, -0.011137207, -0.011119046, 0.018482866, -0.014318577, 0.0070160204, 0.027650386, -0.010393322, 0.019847307, -0.012993687, -0.020382468, 0.003243301, -0.020403987, -0.010788588, -0.010079722, 0.0103552425, -0.004939606, 0.002427746, 0.00717152, 0.01979532, -0.015783546, 0.01656535, 0.001170621, -0.0029399616, -0.009035179, -0.032702297, 0.009882132, 0.008239087, 0.04113215, 0.013063113, 0.044108085, -0.013233501, -0.009222621, -0.011635659, -0.012826178, -0.00048456027, 0.027917823, -0.009682834, 0.002712197, -0.0024573137, -0.00990747, -0.024183793, -0.011651541, 0.009005753, 0.00008049041, 0.00039738114, -0.020755583, 0.0038094842, -0.0037014035, 0.0024803376, 0.009357803, 0.0076348186, -0.023319798, 0.02281202, 0.014123299, 0.0062326896, 0.06103098, 0.008865868, 0.0075916834, -0.0071808784, -0.009386674, 0.005490885, 0.0050085695, -0.013782054, -0.010372147, 0.02843295, -0.0021623413, -0.0315211, 0.00067951984, -0.012461821, -0.02621536, 0.015225564, -0.023432884, 0.00249231, -0.0071040452, -0.0152858775, 0.01048535, -0.01027628, -0.0032243365, -0.018654946, 0.014987736, -0.03168651, 0.009276951, -0.002078957, 0.017233182, -0.0299795, 0.006008353, -0.005860855, -0.016662437, -0.0038227914, 0.0027982683, -0.024608694, 0.0055922465, 0.0012468908, -0.013823309, 0.0109821465, 0.02310923, 0.005755869, 0.0226146, 0.02668019, 0.00022205047, -0.00842529, 0.006664093, -0.0210233, 0.023088772, 0.0064713275, -0.011487268, -0.0023176833, 0.016765675, -0.00648739, 0.0073072133, 0.0015391668, 0.022490453, -0.013754608, -0.02246985, 0.0014798099, -0.0003750215, -0.0067982003, 0.018032992, -0.00060068915, -0.0047893594, -0.009680243, -0.026499048, 0.01822373, 0.10144419, 0.0010469465, 0.019845149, -0.011150197, 0.012937211, 0.000075727425, 0.006884436, 0.00046998024, 0.011159121, -0.02113391, -0.001655131, -0.008632083, -0.018555904, 0.010178563, -0.008483208, 0.012026744, -0.004591733, -0.0037839767, 0.0038250408, 0.0103322705, -0.00471575, 0.003441815, -0.0017952122, 0.0015280626, 0.018105881, 0.0019347465, 0.0073270765, 0.017063627, -0.0075088628, -0.008822091, -0.0096809575, -0.0075481213, -0.010989515, -0.0026282615, 0.011811266, -0.0005963113, -0.020637797, 0.007248766, -0.0023882918, 0.004296774, -0.0047153896, -0.013387994, 0.015491823, 0.010406756, 0.00066403166, -0.0002682969, 0.0053202207, 0.008173875, -0.0030184719, -0.013046678, 0.012754033, -0.0053971857, -0.00081337185, -0.004279201, 0.0031516405, -0.004088258, 0.011347486, 0.015165127, -0.010187261, -0.011302143, 0.01559223, 0.0065590674, 0.0075921733, -0.0081437575, 0.0073093562, -0.00063985167, 0.0040387656, 0.006875872, -0.0038001703, -0.034391154, 0.017660564, 0.0030014515, -0.011248113, 0.07661098, -0.017896358, -0.006254863, -0.0048702112, 0.00011627421, 0.00051480334, -0.0060836636, -0.000790886, 0.036183525, -0.0043827863, -0.0023569388, 0.0035409192, 0.023488859, -0.002540244, 0.022664594, 0.0077871783, 0.02741269, 0.010185235, -0.0013075056, 0.026312139, -0.012505721, -0.019249383, 0.006867166, -0.010897961, -0.01236665, -0.016397545, 0.003406381, -0.01668264, -0.014908236, 0.0021068584, 0.0031757532, -0.018688902, -0.0026135414, -0.021406017, -0.010698167, -0.0064401235, 0.03884463, -0.001354515, 0.008072623, 0.032464106, -0.011725127, 0.012479823, 0.0037959614, -0.0025231396, -0.0078085633, -0.00892294, -0.007108785, 0.018027326, -0.018836161, -0.022072254, -0.021926617, 0.0032491204, -0.013168573, -0.002821395, 0.007340818, 0.009170315, -0.00024097423, 0.024138954, 0.029669644, -0.026628913, -0.0044956887, -0.0035684104, 0.009053622, 0.01650071, 0.038205415, 0.0095594125, 0.0115846265, 0.0030913774, -0.0106419055, 0.018519916, -0.011817539, 0.03254155, -0.011964113, -0.023015536, -0.022455558, 0.0059526465, -0.009919127, -0.023867663, -0.0014340245, 0.003396673, -0.0046614916, -0.02022827, -0.027044976, 0.020077594, 0.00800064, -0.007708891, -0.029502554, 0.000987105, -0.008505533, 0.007329152, 0.028671943, -0.015621053, 0.01373015, 0.0019219276, -0.0055576363, -0.025863366, -0.010310445, -0.002463555, 0.022472069, 0.03558441, 0.005190759, 0.018032651, -0.009176394, 0.0064199674, -0.00854136, 0.010244497, -0.01651225, -0.015355518, 0.02369519, 0.009676434, 0.023619153, 0.07543789, -0.03093738, 0.020435499, -0.006978717, 0.01330483, 0.006278122, -0.008477599, -0.026291894, 0.010942922, -0.003664232, 0.00071940274, 0.019700555, 0.0070916433, -0.010485196, 0.010567573, -0.038442597, -0.0014513945, -0.06996274, 0.01919525, 0.020141732, 0.02096601, 0.0070212386, -0.017366346, -0.014313125, 0.018373437, 0.0109719625, 0.03950105, -0.001985094, 0.0074539995, -0.0072380994, 0.022318361, 0.0012266736, -0.0057340874, -0.0025166469, 0.017486645, -0.0013579007, 0.014075021, 0.0032137204, -0.011704835, -0.0058565526, -0.005710829, -0.008343295, 0.002358275, -0.00020055975, -0.016928028, -0.008910634, -0.014438459, -0.04970226, 0.015742742, 0.021745995, 0.006527004, -0.004189062, 0.004268867, -0.024300694, 0.058089323, 0.011742409, 0.0004328926, -0.01891901, -0.01625144, -0.009040683, -0.010138129, 0.013584346, -0.0047484576, 0.014944488, -0.015048989, -0.002249103, -0.016973678, 0.012349355, -0.01124267, -0.0005340537, 0.012717541, 0.016780362, 0.004336479, 0.0040245196, 0.015554585, -0.0032088188, 0.017269926, -0.0011161575, 0.01023152, 0.014109432, 0.007839069, 0.021882698, -0.0128946295, 0.020536881, -0.05986195, 0.015341552, -0.019988349, -0.00081820413, -0.008224828, 0.025645336, 0.0055800052, -0.007863451, 0.006009431, -0.00006552573, -0.024701558, 0.005486448, -0.00115422, 0.019971814, 0.010341841, -0.007172267, -0.002226517, 0.0045652194, 0.007230404, -0.03196115, 0.01971862, 0.017034348, 0.01079349, -0.014063093, 0.014314188, 0.00558319, 0.016345989, -0.0033025423, 0.008782176, -0.010381073, 0.0033613953, -0.031176116, -0.000062578314, -0.00062386604, 0.020109816, 0.0013206709, 0.001539548, 0.0033350305, -0.006886001, -0.004506687, -0.01216515, 0.011853934, -0.0007689404, -0.034321956, -0.010535746, -0.013218742, -0.021265334, -0.0036528371, -0.0043933606, -0.0019115956, -0.005085378, -0.016077368, 0.0071355086, 0.02175208, 0.02383183, 0.006005601, 0.0016132864, 0.004431825, -0.013476467, -0.010148468, 0.0076254127, -0.011818579, -0.046460178, 0.006837738, 0.0057580187, -0.011597905, -0.00063720567, -0.0029602342, 0.026979558, 0.00059183507, -0.023791218, -0.010088606, 0.010388434, -0.034724876, -0.008236227, -0.0001820325, -0.011769285, -0.0006846703, 0.007158518, 0.0008850605, -0.023149358, -0.012244097, -0.022034261, -0.006025731, 0.004411871, -0.004712875, 0.008989394, -0.003249586, 0.012653094, -0.01281871, -0.020064818, -0.033938546, -0.019967336, 0.016110104, 0.021615699, -0.0057445946, -0.019263515, -0.0108292615, 0.0074683037, 0.0094574625, -0.006174953, -0.028844094, 0.0018843992, 0.0086057335, -0.010209518, 0.017309444, -0.015434825, 0.00082279654, 0.00035043352, 0.012187942, -0.018246554, -0.02373449, -0.055346552, 0.0030491578, 0.004612348, -0.0064234147, 0.01054554, 0.012548431, 0.004271905, -0.013582806, -0.0034178714, 0.0025627478, -0.037448607, 0.008511217, -0.01822087, -0.0033362776, 0.017043134, 0.008669464, 0.009163387, -0.0032704014, -0.0012238781, 0.004323949, -0.0006384995, 0.006594046, -0.027441563, -0.00082690496, 0.030650258, 0.017669806, -0.0034088453, 0.00672369, 0.013230912, -0.0111086685, 0.0014874312, -0.0062925373, -0.0073495153, -0.022669343, 0.00906247, -0.0077429726, -0.011144787, -0.005946349, 0.00016227459, -0.026876751, -0.033713836, 0.009931155, -0.013011922, -0.0018418621, -0.0017124224, -0.03147763, -0.020215036, -0.010520204, 0.0030611132, -0.0123032695, -0.019436432, 0.027775774, -0.0014252618, 0.004727087, -0.0038017198, -0.012815549, 0.008921606, 0.012556599, 0.011258763, -0.019262102, -0.012496168, 0.014971811, -0.002198738, 0.010966205, -0.008796619, -0.01957876, 0.028601585, 0.00089569, -0.021910721, -0.008920018, -0.0142175825, -0.015599591, -0.0029582162, -0.005106, -0.0054939715, -0.0006270688, 0.0023061254, 0.016606305, 0.011650248, 0.010464634, -0.049644988, 0.023363778, 0.018895773, -0.014231053, -0.0024015848, -0.007746987, -0.012141293, 0.014634419, -0.009586936, -0.012660519, 0.000058445756, -0.019817563, -0.006353821, -0.00584065, -0.010418512, 0.012496899, 0.011857602, -0.0064591873, -0.008102868, -0.0077454452, 0.041403476, -0.010108273, 0.0075285104, 0.0014286469, 0.005105304, -0.016211608, 0.0035728696, 0.008610527, 0.003911059, -0.007145042, -0.0076944693, -0.01690046, 0.011259115, -0.007692241, 0.01303568, -0.024192411, -0.008378573, -0.00031708714, -0.005583413, -0.005369078, 0.0064027463, 0.011340362, 0.008431784, 0.017673062, 0.0043831174, 0.014750672, 0.012784641, 0.00644515, -0.0129009485, 0.003202517, -0.013320603, 0.0010052914, -0.007999084, -0.00073635887, -0.023445774, -0.014920011, -0.0020658083, -0.0022660685, -0.005872412, -0.0013881527, -0.0023981505, -0.01351621, 0.024396965, -0.002554154, -0.022273745, -0.012678976, 0.0043622437, 0.0134514645, 0.027598593, -0.009175108, -0.00894022, 0.012978143, -0.010593132, 0.0049131005, -0.0016672278, -0.014355146, -0.0009957327, 0.006306513, -0.014461402, 0.000928197, -0.020860014, -0.019100765, 0.012859691, 0.023781314, -0.011136561, -0.022290621, -0.014636765, 0.0053479155, 0.003979741, 0.002948891, -0.01209569, -0.00845997, 0.0016151428, 0.009704375, -0.0055186404, -0.022550147, 0.018099133, -0.004623302, 0.010365483, -0.022734234, -0.010157954, -0.02228518, 0.0013232623, -0.021323336, -0.006545722, 0.020385738, 0.002351329, 0.0041714804, -0.015347394, 0.0167386, 0.000966765, 0.006588579, 0.01867216, -0.0005553179, -0.0039279545, 0.018869534, -0.013686664, -0.027177928, 0.0028365029, 0.022012254, 0.0043645944, -0.011258566, 0.008767419, -0.0069479947, 0.018386953, 0.007330164, -0.01178887, -0.0028477642, 0.0021110617, 0.013203438, 0.0033346943, 0.0021811847, -0.014629346, 0.0060764817, 0.002958772, 0.0047142715, -0.01858633, 0.0019285996, -0.017546104, -0.0034806665, 0.00069574284, -0.011643851, 0.016558727, -0.009696839, -0.01601101, -0.011559568, 0.0057887114, -0.01985188, -0.008714834, 0.0009936743, -0.013472092, 0.0086886715, -0.005470616, -0.014890931, 0.0118633285, -0.0050262115, 0.004620779, 0.009363215, 0.0043392875, 0.020937435, -0.004532457, -0.014702744, 0.006352968, 0.0020106174, 0.01624653, -0.011163373, -0.021005161, -0.015978051, -0.0011857201, -0.0100842, -0.00764735, 0.0040403917, 0.005290606, 0.0001503999, -0.017284043, -0.10699789, 0.013487894, -0.01516326, 0.016484082, 0.01383147, -0.014355009, -0.004387414, 0.011764669, 0.0058831833, -0.0077893394, -0.009123861, -0.0029105863, -0.0015256373, -0.0010505711, 0.0054127104, 0.0014342966, 0.007096173, 0.0005520386, 0.031036692, -0.011921294, -0.008797786, -0.008342389, -0.023932554, -0.011099847, 0.0064543267, 0.017667891, -0.017343218, 0.032555167, -0.0083144605, -0.024564257, 0.0025587364, -0.0073633865, -0.01320471, -0.007030427, -0.004197502, -0.0024189746, -0.014331019, -0.0034622801, 0.03979928, -0.01143036, 0.010499928, 0.014958661, 0.005061897, 0.0092820125, 0.014248716, -0.0033907837, 0.0016453897, 0.0014864942, 0.011619948, -0.0052863183, -0.008450587, -0.018679092, -0.0052126516, -0.00016842272, 0.0050580893, -0.002518014, -0.011092223, -0.011114624, -0.0027525197, 0.00504494, 0.0221013, 0.007166455, -0.0029281944, -0.023127342, 0.008665816, 0.0049971743, 0.0083394535, -0.0071145124, 0.0016031248, -0.011544086, -0.01733805, -0.0028529703, 0.003604035, -0.01580361, 0.0054746354, 0.018893039, -0.002379647, -0.010367641, -0.001509343, 0.012107591, 0.019265076, 0.005331771, -0.0066674803, -0.0040950393, 0.019240586, 0.02668884, -0.009568791, 0.016906748, 0.039804038, 0.008898975, -0.00781353, -0.022702985, -0.02123132, -0.013353117, -0.027743874, 0.021865062, -0.013813834, -0.008851488, 0.025454747, 0.0046648122, -0.015923582, -0.008627779, 0.0055889618, -0.016734254, -0.014426453, 0.030030526, 0.0010216756, 0.0010644458, 0.0011039376, -0.017380234, -0.0017870449, -0.010164748, 0.011665284, 0.019154983, 0.009310585, 0.025548644, 0.0068379617, -0.008112621, 0.016936004, 0.008656372, 0.00040059758, -0.0072024413, 0.000064649066, 0.009362295, 0.026078165, 0.01181541, -0.004490749, -0.009786491, 0.011399331, -0.0047271214, 0.0046840524, -0.016185066, -0.01509593, -0.006903398, 0.0101299845, 0.010640374, 0.030768637, 0.016641377, -0.007497235, 0.009224107, 0.013185231, -0.012742912, 0.00055194367, 0.02134122, -0.004422194, -0.0060740835, -0.023636157, 0.0034716502, 0.017278515, 0.00003819513, 0.014893529, -0.0006128582, -0.010041615, -0.0007667996, -0.004391994, 0.0109469285, 0.012984447, -0.013820553, 0.01029474, -0.006683183, 0.004498154, 0.00072382484, 0.00012502176, 0.019257803, -0.013494891, 0.011577294, -0.00012660882, -0.008355303, -0.009254156, -0.006831846, -0.003485628, -0.029103043, -0.00058848725, 0.0072164577, -0.009204837, 0.014983426, -0.023934964, 0.012855685, -0.013281985, -0.00016511594, 0.0048529278, 0.017002726, -0.017633026, -0.00309781, 0.018269556, -0.013539923, 0.017761368, 0.012661895, 0.007828591, 0.004617946, 0.026834887, -0.0061360113, -0.00139224, -0.0036910106, 0.00866288, -0.0026139063, 0.0135196755, 0.011271041, -0.006736633, -0.0033534323, -0.015741177, -0.0022108168, 0.0010421341, 0.0025610637, 0.009482556, 0.004722316, 0.007548523, -0.01337747, -0.009547312, -0.002208437, -0.022324622, -0.011158331, 0.015123495, -0.00617654, -0.001397285, -0.0107547585, -0.007324122, 0.0036361315, -0.02670041, 0.018033542, 0.007538904, -0.021425875, 0.021535786, 0.018833721, 0.019926243, -0.011355691, 0.029167902, 0.023375591, -0.00074628956, 0.014924361, -0.025567714, 0.0023894827, 0.017238658, -0.002909643, -0.0034555725, 0.011383404, -0.00079123606, -0.0046985224, -0.02884859, 0.009163954, 0.010192562, -0.012569571, 0.019842047, 0.035503197, -0.00015561214, 0.003803062, 0.01251399, 0.0009304418, 0.0006291984, -0.004074756, -0.014590097, 0.005257375, -0.011503353, 0.0011045056, 0.00042356586, -0.024911642, -0.006850012, -0.012694418, -0.0042082584, 0.009776603, -0.0011461172, 0.0031745122, 0.020695243, -0.0097493315, -0.018653722, -0.017458353, -0.013319945, 0.009966323, -0.008799916, 0.008613801, 0.0068666986, -0.009415657, -0.0014104651, 0.010938324, -0.00025571327, 0.0062075662, 0.017442092, 0.020933907, -0.007408999, 0.008991783, -0.008437913, -0.00528488, 0.012960808, 0.0049947314, -0.017971152, 0.0059522185, -0.0052006156, 0.011921062, -0.013060628, -0.00016973032, 0.014560991, 0.000782067, 0.022450782, -0.013551691, -0.0019292834, 0.011270744, 0.016910028, 0.007545131, 0.0071708346, 0.0045038494, 0.011803429, 0.007980685, 0.035460126, -0.013976337, -0.0047998326, -0.018052854, 0.0030239234, -0.0031759776, 0.004575059, -0.022172023, 0.0039273975, -0.0031497923, 0.012068103, 0.018801227, 0.0008202687, 0.005553182, 0.0036664053, -0.0021898034, -0.00030967244, 0.002516749, 0.0063767293, -0.003820206, -0.014622092, -0.025069375, 0.011340596, 0.010682002, -0.0055671926, 0.021191126, 0.005253768, -0.008825813, 0.0020059634, -0.007804033, 0.016567763, 0.0070852595, -0.008452691, 0.0027140381, 0.011566829, 0.042288594, 0.015803805, 0.0033402112, -0.015991263, -0.009188603, 0.0045092204, -0.0066915387, -0.022753747, 0.0064984746, -0.0038357796, 0.0119744, -0.0027063503, -0.0015168705, -0.005917008, -0.0048473533, 0.014729465, -0.008276277, 0.023541983, 0.014126732, -0.010573727, -0.0144707225, 0.0040865997, -0.016086899, 0.01683731, -0.017303566, -0.009199098, -0.0069095152, -0.0065102205, 0.009722693, 0.006581351, -0.015284087, -0.0131527735, 0.006136387, 0.026657494, 0.0018443039, 0.027052263, 0.018913845, -0.016975924, 0.01724067, -0.023707619, 0.018934863, 0.014634982, -0.017958868, 0.006523211, 0.0038003915, 0.06337754, -0.009312712, -0.0040753093, -0.013067489, -0.0054917973, -0.009667246, 0.0039506713, 0.0020622122, 0.054925133, -0.000875993, -0.0004018072, -0.007145906, 0.008041381, -0.01609777, 0.02327153, 0.022279818, 0.0068653557, 0.012107198, 0.017338239, 0.014946092, -0.017696533, -0.011591639, -0.010618659, -0.009328345, 0.00983521, 0.004017561, -0.0016090301, 0.19462596, 0.0010705553, 0.021445967, -0.018382793, 0.010067022, 0.046067316, -0.00040864645, -0.0067058965, 0.0118878, -0.011519615, 0.00882001, 0.005906862, 0.006703563, 0.0064721135, -0.02649386, -0.0075024525, -0.016244395, -0.017822819, 0.0061873686, -0.0114016645, 0.006118054, -0.019840602, 0.012553186, 0.008914689, -0.0006169469, 0.00067978905, 0.0076054987, -0.006224976, 0.009645051, -0.0010202542, -0.014067531, 0.00039650968, -0.009325893, -0.002206645, 0.014232923, 0.019497246, 0.0022513422, -0.008522253, 0.038909853, 0.007700963, -0.0015990643, -0.015145355, -0.018335806, 0.0038119243, 0.012977498, -0.0046347957, -0.004129633, 0.004202902, -0.0041214204, -0.001558643, -0.0056231, 0.0021942682, -0.03746876, 0.04596921, -0.001734008, 0.011198331, 0.004093305, 0.009521185, -0.014107775, 0.02135097, -0.0043396307, 0.007531812, 0.025957644, -0.00569898, 0.019303786, -0.009239122, -0.0029088329, 0.004075047, -0.009532696, 0.024117803, -0.009661067, -0.015325954, -0.0027410765, -0.0070421365, 0.026252167, -0.014496782, 0.013982001, -0.0026025716, 0.0055982275, 0.005835645, -0.030261641, -0.011833044, -0.0042677936, 0.0061066314, -0.005783133, -0.0039285296, 0.00061171886, 0.023820348, -0.0053699943, 0.018862367, 0.008466461, -0.013604249, 0.0214002, -0.007034457, -0.008677496, -0.030444708, -0.0271412, -0.02650559, 0.0053219455, 0.0036288777, -0.017870756, 0.007846598, 0.003335089, 0.0022877355, -0.012692751, 0.0037509499, -0.018622091, -0.002586756, -0.012502831, 0.014241109, 0.018283833, 0.0003264069, -0.008780612, -0.007401845, -0.0030909746, 0.00093393674, 0.020613426, -0.008473763, 0.01727088, -0.0036852208, 0.020912433, -0.0025535307, -0.008679852, 0.009428723, -0.03504971, 0.0032677692, 0.008220736, -0.013881626, 0.004968461, 0.00897, -0.026565475, -0.017101284, -0.007864357, 0.0020528906, -0.0074117742, 0.020978693, -0.016525429, 0.0010830715, 0.0072916397, 0.001196439, 0.0055356086, -0.011065429, 0.011717862, 0.000053812626, -0.019390779, -0.0065903314, 0.019610345, -0.025989069, 0.032169785, 0.012773503, 0.01124975, -0.00026517193, -0.0040258467, -0.021750188, -0.0035323477, 0.0049382187, 0.0063782055, 0.013232888, 0.016934972, -0.0073086275, 0.0020843125, 0.072915465, -0.005154324, -0.0023140796, 0.0020410006, 0.00008318137, -0.0074966117, 0.018873101, -0.009451761, -0.016468985, 0.0096149305, 0.0026135335, -0.017007498, -0.00354648, 0.0030359267, -0.0071296208, 0.021844838, 0.0016442379, 0.015138836, 0.0022918493, -0.028174015, -0.009158293, 0.009707891, 0.0010757432, -0.0013964024, 0.0063494784, 0.024582652, -0.007549674, 0.0052128313, 0.015306173, -0.031364787, 0.009357084, 0.004946699, -0.0073869987, -0.012257394, -0.004172741, 0.0037381228, 0.02365574, -0.045579914, 0.013139886, 0.00023369129, 0.0228024, -0.011095507, -0.01354557, 0.010475781, 0.006556125, 0.0030201813, 0.014345835, -0.025871124, -0.0107771205, -0.0023740192, -0.0143166, 0.013140548, -0.0052608596, -0.00951915, 0.014411825, 0.007891153, 0.01776363, -0.11946309, -0.005907851, -0.0042901486, 0.006529069, 0.0074087344, -0.0140917925, 0.00015271107, 0.004701341, -0.007901108, 0.021449106, -0.021879824, 0.004958423, 0.00087517814, -0.02046175, -0.011586235, -0.011658313, -0.016922737, 0.0154437525, 0.0103291115, 0.007737465, 0.031548258, -0.028090801, 0.010836616, -0.01577225, -0.0011611204, -0.0094051715, -0.0039985995, -0.006237464, -0.021422852, -0.009718742, -0.008260759, -0.020251133, 0.0037290372, 0.004900447, 0.0009126783, 0.0022161363, -0.0032198092, 0.0032829118, -0.0032114247, 0.0064691817, -0.0028551358, 0.008331785, 0.0019724814, 0.028683884, -0.021349793, 0.016500244, -0.020774761, 0.017352238, -0.0156588, -0.01661878, -0.0011022699, 0.01120625, -0.022541123, -0.005056086, 0.0056015877, -0.0071622944, -0.0060423724, -0.005405436, -0.00061917363, 0.013421548, 0.012721829, -0.024182215, -0.0019697442, -0.015889639, -0.028589195, -0.008421778, -0.013093381, 0.021007694, 0.031212103, 0.0018010844, 0.0027205807, 0.027445538, 0.0065736994, -0.0345999, 0.030549446, 0.00056972675, -0.0061975503, -0.030216502, 0.0059772083, 0.0025399136, 0.0049210936, -0.009686645, -0.011832521, -0.010393582, 0.0024369576, 0.0017552399, -0.0023211509, 0.0147305345, -0.008743607, -0.015256748, -0.01013577, 0.0009909704, 0.026756732, 0.009189025, -0.0033321944, 0.039550934, -0.017229699, 0.0052258563, 0.018327927, 0.00517329, 0.013695743, 0.018128052, 0.009906465, -0.0003842121, -0.0014406558, 0.05730947, 0.02643843, -0.0011699923, -0.031148463, 0.002633267, 0.011679301, 0.0062675863, 0.0072922795, 0.0026469785, -0.00408225, -0.0015937153, 0.0027337791, 0.021259967, 0.012849417, -0.0069636884, -0.010648159, 0.022513133, 0.0045074937, -0.013747381, -0.0023393722, -0.0015304872, 0.00338637, 0.009899138, 0.010644065, 0.0025127933, -0.0019762414, 0.006126595, 0.004030032, 0.007700776, 0.0042840866, -0.019296918, -0.01055234, -0.03086151, -0.0052400185, 0.013823877, -0.003430395, 0.0098581705, -0.0038093159, 0.0128399255, 0.0007175004, 0.0007081934, -0.004224115, -0.007895015, -0.013572745, 0.006173229, -0.013625517, -0.009725157, -0.0109409895, 0.024906944, 0.0016155473, 0.018566983, 0.034519695, -0.013584687, -0.014810623, -0.008861566, 0.0034809937, 0.009113031, 0.0019332558, 0.002109498, 0.023517612, -0.016886245, -0.023921747, -0.0073056873, 0.007832119, 0.019307902, -0.029214459, 0.009599787, -0.00900629, 0.002805354, 0.012262907, 0.015221097, 0.032003343, 0.031993404, 0.008576794, 0.028590709, 0.0126173105, -0.007893018, 0.007999023, -0.011617967, -0.0006329882, 0.02418816, 0.01331399, 0.0048556137, 0.01717825, 0.006005446, -0.003063428, 0.012806571, -0.016457055, 0.000023066188, 0.0034499113, -0.013020801, -0.018868795, 0.026268592, 0.008902142, -0.03726166, -0.009479808, 0.0028625065, -0.014579875, -0.01240785, -0.00428935, -0.032548096, -0.007974016, -0.012680634, -0.0020411713, -0.01365382, -0.008463486, -0.013490218, 0.006806828, -0.007115409, 0.01910817, -0.01856562, 0.01133953, -0.0045634205, -0.008956342, -0.029310377, -0.00925332, 0.00056454324, 0.0008270416, 0.019938314, 0.013714213, -0.018165765, -0.004690215, -0.004496573, 0.0033059795, 0.009437804, 0.009655245, -0.032574095, 0.008659764, -0.02301606, 0.009791134, 0.0125067895, 0.016961364, -0.025957767, -0.00022238005, 0.012566352, 0.020704059, -0.009690437, 0.06312203, -0.012024612, 0.0020129234, 0.018871224, -0.029785175, -0.0011159476, 0.023754075, -0.008080397, 0.024723457, 0.01673929, 0.010284791, -0.0044765533, -0.0071533443, 0.013434616, 0.012255162, 0.015044735, -0.0010063178, 0.0015583698, 0.007979611, -0.0013127952, -0.0061044763, 0.0038117608, -0.007327803, -0.0033976522, -0.004593733, -0.0008898692, 0.009709724, -0.022621028, -0.0033393202, 0.015088241, -0.006074729, -0.006459473, 0.0026249527, 0.0020477846, 0.0019750197, -0.024844434, 0.004176487, 0.012488548, -0.0080878185, -0.025013076, -0.0044270037, -0.0065545975, 0.021124257, 0.015308596, -0.0006708252, 0.01963975, -0.008547233, -0.013163391, -0.020325469, 0.006527279, 0.01333898, 0.0028002453, -0.0056146225, 0.029957691, -0.02773684, 0.021139855, 0.00013647263, -0.010899093, -0.005092536, -0.01203069, -0.02918113, -0.009383769, 0.010569596, 0.03048185, 0.007453305, -0.018738873, -0.009001197, -0.0000363337, 0.004871784, 0.0017194358, -0.00027003576, -0.006829883, 0.02014083, -0.021773867, 0.0123567395, 0.006763189, 0.014088739, -0.022527462, 0.026229963, 0.012244106, 0.013153716, -0.006080717, 0.0030108914, 0.011852485, -0.0058223726, -0.007868152, -0.0054147835, 0.00935805, -0.006848558, -0.006909612, -0.0148604885, -0.021248404, 0.0070667844, -0.013130084, -0.00981235, -0.025140677, -0.012199921, 0.0027130719, 0.015799526, 0.0068232208, -0.001105232, -0.0022870672, 0.003953929, -0.0063442313, -0.0040961527, 0.0021530117, -0.012462828, 0.0042540617, 0.01772507, -0.02638745, 0.01660937, 0.020135501, 0.010418829, 0.001568324, 0.0014081053, 0.01836061, -0.010444957, -0.0030779825, -0.015059036, -0.0029137111, 0.012087211, 0.01396629, 0.00035726474, 0.021183535, -0.0039261705, 0.007463297, -0.0059671015, 0.009027141, 0.001515494, 0.009791594, 0.025301715, -0.0020030579, -0.011855244, -0.0056309025, -0.0016221714, -0.014019948, 0.007754016, 0.0026702487, 0.004952479, 0.0069704005, 0.02283138, -0.027231185, -0.021723904, -0.04572319, -0.0041934885, 0.0045362716, 0.023655348, 0.02829465, 0.03655443, -0.0010156669, -0.014241034, -0.014671451, -0.008166737, -0.016514895, 0.001080318, 0.0007477491, 0.03188089, 0.007040214, 0.00482313, -0.0048862323, -0.0139735555, 0.006549453, 0.0027787287, -0.01482514, -0.0018776424, -0.0044219936, -0.013757497, -0.0023069752, -0.002157202, 0.01545684, 0.003421216, -0.001601233, 0.020123221, -0.004009128, 0.005391545, 0.004926293, 0.011291547, 0.0048929593, 0.030663213, 0.00996257, 0.019691633, -0.01116638, -0.0017757413, -0.007831991, -0.007990303, 0.004559965, -0.014901263, 0.005348026, -0.011137799, 0.012046851, 0.0035614488, 0.016578263, 0.007640626, 0.013562952, -0.012324063, 0.011199467, -0.02029125, -0.0010998799, 0.0011749652, -0.0126963835, -0.008473297, 0.01172437, 0.0044020056, -0.022620838, 0.0072121536, 0.0026084823, 0.0071129696, -0.00004338029, -0.015106052, 0.026961109, -0.004731325, -0.00016964093, -0.0013609367, 0.012550197, -0.010761909, 0.011529716, -0.0143644465, -0.0022167363, 0.010533643, 0.002056986, -0.011846799, -0.012886462, 0.010072039, 0.0027285353, -0.013029302, 0.020101573, -0.00127795, 0.003637112, 0.0066948906, -0.01009099, -0.013229669, 0.023323558, -0.0072205234, 0.010971003, -0.0039848895, 0.009725801, 0.0023290273, 0.0058846064, 0.016696576, 0.0031669696, 0.011165213, -0.01063236, -0.03527322, 0.009940918, 0.022315891, -0.0306292, -0.0013388611, 0.008774716, 0.020954216, -0.007982701, 0.027197255, -0.004286825, -0.013924953, 0.03276462, 0.037393175, -0.013542004, -0.005740825, 0.00096889416, 0.007135639, 0.0024264106, 0.0031152992, -0.0071673486, 0.010195224, -0.0025254295, 0.022588992, 0.010220461, 0.0055998894, -0.009705344, -0.012061598, 0.021359187, 0.01312477, -0.0070495866, 0.0153283365, 0.015979411, 0.0040927357, -0.000016712165, 0.0009840799, -0.026535, 0.00985229, -0.019541116, 0.01163676, -0.017268477, 0.0107842935, -0.00063259737, 0.07334603, -0.0020069354, -0.03604826, -0.011309443, -0.0145838, 0.002294821, 0.018328696, 0.017975535, 0.010572068, 0.013035247, 0.022166342, -0.012854487, 0.015468779, -0.02023699, 0.011719686, -0.0048316624, -0.037636574, 0.027671752, 0.0012204975, -0.013280379, -0.023236867, -0.0003050773, -0.0075348294, 0.010749975, 0.01127478, 0.0073440517, 0.006748738, 0.008117867, -0.018292135, 0.013817835, -0.023554511, 0.003310583, -0.001986256, 0.008534083, -0.0010592768, -0.018961424, 0.0074962177, 0.006198013, -0.0028422582, 0.017240634, 0.019294137, -0.0018065725, -0.0039046921, -0.01257009, -0.02040695, 0.0071268235, -0.0019280805, 0.021698814, -0.0008624354, -0.01594301, -0.011184712, 0.005066289, 0.007092861, -0.0003827307, -0.01531904, 0.0028901289, 0.017066373, 0.017485544, -0.021906262, -0.023233399, 0.0032717506, 0.009747209, 0.01810977, -0.009362766, 0.0035573647, -0.0221538, -0.009844151, -0.0023958522, -0.017492156, 0.01564528, -0.010795568, 0.0018131576, 0.01232335, -0.026790816, 0.022938779, 0.005347769, -0.017423918, 0.015522507, -0.0031591526, 0.01722805, 0.008368901, 0.00010151707, 0.018494062, -0.0006160913, 0.009218537, 0.0201138, 0.013360199, -0.035454582, 0.0023603167, 0.015430464, -0.014843667, 0.018976657, -0.002604009, 0.008891481, 0.009063072, 0.0020228447, -0.021871775, 0.036265984, -0.009706295, 0.011002925, -0.00547197, 0.010707506, -0.0004876073, -0.01594082, -0.000022911958, -0.017805, -0.01441751, 0.00095628074, -0.004415541, -0.0019386462, -0.027144741, 0.019775877, 0.02958334, 0.015820554, -0.0075491904, -0.010694268, 0.0032205603, -0.010690967, -0.017469432, 0.0048528286, -0.02706542, -0.01749421, -0.006603588, 0.001878176, 0.0063836174, 0.013159158, -0.005697723, -0.03124096, 0.026628187, -0.010062705, 0.0016957155, -0.007838407, -0.0077790814, 0.022663275, -0.02390185, -0.008436406, 0.0064804545, 0.10611905, -0.0077527063, 0.017724503, 0.012427506, 0.009097644, 0.0075758705, 0.03268202, -0.0021811386, -0.0083658695, -0.017721929, -0.017338661, 0.023739576, -0.0028109904, -0.0010691516, -0.0012843971, 0.011491672, -0.015406668, 0.0030433482, -0.020833075, -0.0099152, -0.038682185, 0.0077724666, 0.0109910825, 0.020140043, -0.007350963, -0.007846183, -0.009244825, 0.021360504, -0.0027255795, -0.039297085, 0.009436179, -0.015533063, -0.0151016265, 0.003912489, -0.024816388, 0.0028180045, 0.012641134, 0.014214992, 0.029634563, 0.016124805, -0.0051570977, 0.00890023, -0.0044248556, -0.0015241181, -0.020485034, 0.011107616, 0.01468987, -0.024133066, 0.0075411783, 0.00026687814, 0.015341315, 0.01595918, -0.017945036, -0.02338567, -0.0125915725, -0.01500446, -0.002394929, -0.011724062, -0.009210067, 0.0034924252, -0.0165733, 0.01916441, 0.01038347, -0.01738797, 0.006460014, -0.004981992, 0.021746421, 0.012133515, -0.0056405743, -0.0006619719, 0.0002761425, -0.002923485, -0.0061589647, -0.0035110593, -0.0074085016, 0.0070596696, -0.0047331257, 0.007727989, -0.0052510835, 0.010915316, 0.040438008, 0.044723395, 0.0058162394, 0.0011982219, -0.005024501, -0.012734406, -0.0004304697, -0.0097652, -0.010899124, -0.008033286, 0.0077808215, 0.004717086, -0.011987105, -0.018253887, -0.019864997, 0.001759239, -0.014362182, 0.010708685, 0.002900913, -0.0031776938, -0.00659949, -0.0004169219, -0.0031448682, -0.015096355, -0.005502038, 0.01393005, 0.0044434546, 0.015553432, 0.0052833245, 0.011262697, 0.0077717677, -0.008452052, -0.016280381, 0.007147326, 0.0044539385, -0.009511872, 0.0054129125, 0.011740167, -0.0048945127, -0.014464462, 0.010437229, -0.011325924, -0.017277878, -0.010080626, -0.011209857, -0.0013180416, -0.012779969, 0.0060970252, 0.011460033, 0.0049986816, 0.0019168336, -0.021743843, 0.018424643, -0.009697557, -0.015092939, 0.0044582025, 0.014080819, 0.0182812, 0.0022328843, -0.0023004627, 0.0083790785, 0.0067587285, -0.021778941, 0.024661392, 0.0060920203, 0.0008874371, -0.0006010086, -0.008201943, -0.0050798906, 0.006079982, 0.01090097, -0.0034255802, -0.022290101, 0.013451533, 0.005550098, -0.018370587, -0.0044044256, -0.028140167, 0.0017757538, 0.0021287876, -0.02354302, 0.017034642, 0.016910762, 0.010322473, 0.009384834, -0.00014991705, 0.024087654, 0.009303172, 0.0005519749, -0.011629786, -0.012731245, -0.0031126984, 0.014114698, 0.01886201, -0.0018497409, 0.014516611, -0.015473269, 0.005657458, -0.0046808324, 0.004826496, -0.0075121396, 0.013905466, 0.00015694367, 0.028881356, -0.005554762, 0.0047113984, 0.011621437, 0.01779111, 0.0036049047, 0.020252014, -0.012742673, 0.03748861, -0.0053512207, -0.0030791687, 0.005462445, -0.0033598256, 0.014678695, -0.01759782, -0.004804606, 0.0044751526, -0.0034382357, -0.025137248, -0.00792575, 0.003217152, -0.0037599492, 0.00848207, -0.0065253037, -0.0126460865, 0.019016296, 0.015254462, -0.012670911, 0.007662863, 0.010744539, -0.018721793, -0.021770464, 0.00037251602, -0.020389933, -0.011504889, -0.0020738349, -0.0048399065, -0.020066217, 0.015617709, 0.0047239326, -0.004983019, 0.018050447, 0.019898638, 0.0033035984, 0.02441708, -0.013490812, -0.009922786, 0.0094616, -0.013114699, -0.012378024, -0.03917067, -0.00545265, -0.005397347, 0.027139708, 0.009184142, -0.007995561, -0.009042385, -0.0013114255, 0.0068789464, -0.022952009, 0.0056610797, -0.0214255, -0.008449231, 0.030196873, -0.0023451059, 0.000108787426, -0.01899859, -0.019890537, 0.01448925, -0.015701488, -0.02184137, -0.009083296, 0.0052289455, -0.02202672, -0.0036462953, 0.002675949, 0.008214396, 0.017111044, -0.013626907, -0.032555826, -0.027033148, -0.0005337378, -0.009219796, -0.0057128207, 0.010301546, 0.01778046, 0.009022572, 0.028908448, 0.0072566457, 0.013007072, 0.012615138, -0.004779236, -0.0057359543, -0.008736261, -0.0062118154, -0.022250578, -0.012420385, -0.016339092, 0.010665622, -0.004725337, -0.013766616, -0.007282082, -0.024739426, -0.016079683, -0.017129213, 0.008248289, -0.004916992, 0.0018981384, -0.009161351, -0.0066860896, 0.003004424, 0.0045850836, 0.022117427, -0.0018625021, 0.0058056614, 0.012458968, -0.0047471933, 0.0070688627, -0.022015385, 0.021751571, -0.004891943, 0.0074072424, -0.007969421, 0.004273361, 0.01179347, 0.016032418, -0.019012898, 0.001158331, -0.0051101567, 0.00025428546, 0.016761133, 0.01500311, -0.0020604352, 0.005106278, 0.0056170262, -0.0021087378, 0.0073723835, -0.0019463116, -0.024530664, 0.0034586652, 0.0023759801, -0.01803547, -0.011498524, 0.0119453315, -0.016071487, 0.0006025356, 0.025179572, 0.0067160004, -0.0024295393, 0.0072859186, -0.011680204, 0.008455967, 0.017706042, 0.0034910117, 0.013661264, 0.025072142, 0.011880184, 0.008220447, 0.023104109, -0.008931915, -0.064368315, -0.004162737, -0.012652049, 0.020270485, 0.0057319636, -0.02161057, -0.03064696, 0.003738986, -0.0118044615, -0.014202685, 0.006912093, 0.01844448, -0.005126195, -0.003957347, 0.010540071, 0.0069289496, -0.0056713764, 0.007684269, 0.009919971, 0.035077363, -0.0013063034, 0.006972733, 0.0032858616, 0.004901437, -0.023873016, 0.00978862, -0.0164036, -0.008107606, -0.011460503, -0.0035751776, -0.00022835843, -0.006350656, -0.026671685, -0.010413796, 0.01326509, -0.0005887443, 0.0042119967, -0.00021390604, -0.009187482, 0.0117821125, 0.007870294, 0.017663604, -0.004570224, -0.00022121449, 0.011252904, 0.0057568783, 0.017680615, -0.007544906, -0.022758015, 0.050289672, 0.014416442, -0.017911533, -0.007882782, -0.011008266, -0.010645289, 0.0013193949, -0.00895675, -0.002861101, 0.03629223, -0.0025015115, -0.010608733, -0.0030545718, 0.0056996206, 0.0045136865, 0.005265383, 0.01482631, 0.0074912696, -0.013543807, 0.0045224517, 0.0123642655, -0.00028296714, -0.013549521, 0.012673471, -0.005305346, 0.013044749, 0.0077633383, 0.014900919, 0.014600112, -0.025371466, 0.01865266, 0.0061685108, 0.014514, 0.01714667, -0.015945673, 0.0026128038, 0.009027824, 0.009846487, 0.0028298292, -0.0053756433, 0.005385342, -0.011324017, -0.0142175015, 0.017619194, 0.02218266, 0.011900064, 0.00037475541, -0.0016780788, -0.007919553, -0.0035294648, 0.0017314643, -0.01146334, -0.013950093, 0.019930977, 0.007910558, 0.007150172, 0.012391246, 0.002727367, 0.005271429, -0.02465544, -0.00049891305, 0.009850742, -0.015689434, 0.013197522, 0.007719639, -0.018830307, 0.020790538, 0.018603548, -0.020019695, -0.020931039, 0.010003248, 0.020659951, -0.0032823388, -0.017669791, -0.0056976797, 0.005814541, 0.008218662, -0.03853375, 0.0029150709, -0.0036003888, -0.009123511, 0.01984395, -0.010228067, 0.00017822205, -0.020304719, 0.0066894074, 0.0057301433, 0.005621578, 0.02280207, 0.008117289, -0.012987255, -0.0018959884, 0.015838262, 0.020001655, -0.0032249044, 0.0028712873, 0.00818683, 0.021363255, -0.010106784, -0.012671855, 0.008818268, 0.016380245, 0.011082081, 0.0037377265, -0.0076371427, 0.0076560816, 0.008057706, 0.024402894, -0.007085542, 0.0003560514, 0.0020035284, 0.018365143, 0.010637304, 0.048853006, 0.012249712, 0.0077725565, 0.0036015569, -0.0069529796, 0.0068199583, 0.018058911, -0.0031154223, -0.025498824, 0.020764451, 0.024144331, -0.011205911, 0.0012220776, 0.017347896, -0.007026514, 0.00026535545, 0.019880958, 0.01660535, -0.00829825, 0.019891405, 0.0384007, 0.00821104, -0.011619832, -0.022783367, 0.011448025, -0.036014587, -0.019816946, -0.008233664, 0.006689852, -0.0142295165, 0.021316286, -0.0058766245, 0.029719807, 0.0153446095, 0.0108705405, 0.01317542, 0.006632508, 0.00754862, -0.00070548465, -0.003134374, 0.013150419, -0.0266428, 0.009658666, 0.024564715, 0.0024896993, -0.016050413, 0.0000026727819, 0.0020631088, 0.01756105, 0.0053894394, 0.007065431, -0.000026946602, 0.009898304, 0.017010016, 0.025790026, 0.017898085, 0.013571897, -0.0020822126, 0.0030890405, 0.0035170189, -0.001971574, -0.009422667, -0.02214519, -0.004752081, 0.022930501, -0.0026855173, -0.038103763, 0.0030295332, 0.001167985, -0.009668011, 0.00075878995, -0.0002677734, 0.0027918546, 0.018284017, 0.002617314, 0.0006924831, -0.010207009, 0.01893066, -0.00428276, 0.025194542, -0.0003616405, -0.022645479, -0.00033633746, 0.019412171, -0.0011012054, 0.0038742004, -0.027450973, -0.017095905, 0.0015369802, -0.012201405, -0.01842119, 0.014584018, 0.011475755, -0.0038739962, 0.01659908, 0.023431707, 0.0053575216, 0.0007740477, -0.01368162, 0.001634048, -0.023239223, 0.018940149, 0.004334565, -0.004217979, -0.0051350477, 0.013858495, -0.010788617, 0.0014609122, 0.025323624, -0.0010034288, -0.028502824, 0.004439289, -0.009635875, -0.0034535835, 0.014676735, -0.020076634, 0.011777849, -0.009225238, -0.016933978, -0.023603193, 0.017632682, 0.012574178, -0.00022519496, 0.0058588516, 0.021562945, -0.017687682, -0.0029321942, -0.015730727, 0.011542474, -0.008246788, -0.0012518839, 0.0042686146, 0.013346678, 0.0013657764, 0.0056665135, -0.009030211, -0.020195182, -0.004131468, -0.0075519737, 0.001997133, 0.017070958, 0.006722799, -0.0067907833, 0.013187893, -0.016125077, 0.007078279, -0.010220971, -0.012282097, -0.0074084634, -0.0010866659, -0.005973466, -0.00807842, -0.013525389, -0.03484108, -0.00059534144, -0.010575386, 0.006143376, -0.004563823, 0.006874515, 0.016315622, 0.00014187265, -0.055702724, -0.002528894, 0.012080296, 0.009654394, -0.015519601, -0.0029610456, 0.011121728, 0.036817815, 0.005490757, -0.0051616416, -0.001723851, 0.008198211, 0.0048865103, -0.01252745, 0.0026813531, 0.014091702, 0.0061522517, -0.014509537, -0.028927723, 0.018685574, -0.0063133626, -0.020547772, -0.009668411, -0.020387718, -0.0010322164, 0.007709885, -0.027739614, 0.021138806, 0.09021371, -0.021573743, -0.008205581, 0.022538226, -0.014070857, -0.017472966, 0.007919995, -0.0053754603, -0.020396577, -0.013417019, -0.0210605, 0.02227266, -0.0072088754, 0.031150116, -0.0024174335, -0.010144871, 0.00020741284, -0.012767135, -0.0034332115, -0.029433064, 0.009388461, 0.0081737405, -0.019091068, -0.0027046504, -0.012265859, -0.002407497, -0.020142283, 0.0020599347, -0.00023341119, 0.0039432202, 0.012739564, -0.018075867, 0.002935231, -0.0026971702, -0.007851608, -0.011768637, 0.0011810295, -0.018130237, 0.0020985603, 0.0077499906, -0.0019364596, -0.02071069, -0.0033403814, 0.029521493, -0.005098997, 0.0017021834, 0.026530035, 0.012560966, 0.017191585, 0.012235439, -0.011479821, 0.007946486, -0.0129589485, 0.009123853, 0.012630963, -0.012995985, 0.003245004, 0.018863922, 0.009050958, 0.006418798, 0.0051283604, -0.02344107, 0.00029205112, -0.008910709, -0.01315143, -0.033314288, -0.025514325, 0.0053102826, -0.0011685428, 0.01753772, -0.0005564385, -0.0056158286, -0.016019825, 0.009951151, -0.0035512543, 0.040469248, -0.015770601, 0.005107453, 0.012164836, -0.0053790305, -0.00624699, -0.0012687237, -0.0107805105, 0.022975864, 0.015768254, 0.012866355, 0.02032297, -0.015169993, -0.011575477, 0.029958818, 0.028330427, -0.010924099, 0.0067216773, 0.0048434697, -0.024447571, 0.006056237, 0.0035252627, -0.013986603, 0.011515385, -0.0016409986, 0.0006364784, -0.010674259, 0.016067395, 0.013023001, -0.0013371658, 0.007121886, -0.02255033, 0.015625827, 0.009962301, -0.012905714, 0.011368728, 0.007643068, -0.011338426, 0.013852936, -0.018568253, 0.0049055605, 0.026228977, -0.0023447035, -0.006714587, -0.016144894, -0.0019890561, 0.0032946412, 0.012506435, 0.009338678, 0.0007035854, 0.0030171906, 0.0038554845, 0.0073476, -0.0010335572, -0.011455428, -0.017567117, 0.0034155839, -0.014493224, -0.0010970281, -0.0106554665, -0.020564858, 0.0012306531, -0.003586892, -0.0055414685, 0.008162147, -0.010393583, 0.015088586, 0.0051059513, 0.010784234, -0.018104892, -0.0034425883, 0.020757405, 0.015699359, 0.0072913403, -0.003331733, -0.004616871, -0.009860259, -0.0017010148, 0.027625496, -0.0076700826, -0.0012284719, -0.0090677235, -0.0053906473, -0.019374004, 0.001729646, 0.0043120785, 0.0010643125, 0.00007505411, -0.010694414, 0.006782102, -0.015163129, -0.014936983, 0.000018162584, -0.010479766, -0.014099497, 0.02222566, 0.014575347, -0.0077206, 0.012308191, -0.0040378934, -0.0065221135, 0.012030543, -0.038630843, 0.030219177, -0.0011685626, 0.00002068431, 0.012147984, 0.0079548, 0.0053340723, -0.013062709, 0.01075528, 0.00061436486, -0.023149766, -0.015245519, -0.020204108, -0.012903435, -0.0032113118, 0.005159881, -0.0062516225, 0.0030432558, 0.0050943387, -0.00043037554, 0.0055696503, 0.00011286595, 0.009957132, 0.0039406717, 0.021050716, 0.023005469, 0.021023855, 0.016165677, -0.0034745291, -0.012324377, 0.012965572, -0.00023093935, -0.0022648354, 0.025274808, 0.00464443, 0.011046647, -0.006195843, 0.0104604745, -0.0076457136, 0.0069875633, -0.012806887, -0.012558239, -0.004941497, 0.008998793, -0.013717342, 0.005436682, 0.0029796418, -0.0010200246, 0.012176731, -0.008944645, 0.020961996, 0.009391645, -0.01108604, 0.0040092133, 0.02310504, 0.015267389, -0.012284427, -0.0025707467, -0.0051195477, 0.013578714, 0.0021415546, 0.0063200598, 0.0010281327, 0.0064557013, -0.013529996, 0.03941559, -0.014070971, -0.039502185, 0.0006811096, 0.008317666, 0.006451608, -0.0148497615, 0.010532435, -0.0073040216, 0.008487607, 0.019933606, -0.0014214326, 0.016317094, -0.009874778, -0.022178747, 0.008255726, 0.02327217, 0.0043088677, -0.008791435, -0.006383657, 0.0217848, 0.023058953, 0.006140831, 0.0110299215, 0.002238277, 0.0059408215, 0.0035976716, 0.012655205, 0.0036484126, -0.009031884, -0.01741742, -0.011031898, 0.015317687, 0.014444156, 0.022210978, 0.011858593, 0.00644983, 0.00072248554, 0.005381485, -0.012693171, 0.004724313, -0.0040515694, -0.0024442445, 0.0018280396, 0.0027691568, -0.0033373414, -0.03213444, -0.009995496, -0.027485171, 0.01734007, 0.01754637, 0.011050243, -0.013399842, -0.023268463, -0.010391742, 0.00058623054, 0.0045776763, -0.015789773, -0.0010995603, -0.014765232, -0.001252488, -0.002669432, 0.0057704663, 0.017059982, -0.011354261, 0.0067132893, -0.0022121796, -0.0045807725, -0.020519689, -0.023039902, -0.0026676361, 0.022881877, -0.004775064, 0.020910423, -0.019067017, 0.010719239, -0.007416308, -0.0006951701, 0.0119451145, -0.011269811, 0.0040399767, -0.013828085, 0.012997035, 0.004154776, 0.018528963, -0.0022795305, 0.002702781, 0.020585705, 0.017944988, -0.023486905, 0.0010649445, 0.001180233, -0.010046614, 0.016286295, 0.021247212, 0.0010639817, 0.0062141456, -0.0031102425, 0.012844048, 0.022812586, 0.008295577, 0.012458638, -0.010910166, 0.0060495054, 0.00153477, 0.004839783, 0.0012053819, 0.004005008, -0.025305476, -0.013320033, -0.0038200857, 0.0096273655, 0.007993585, -0.0008399527, -0.013893859, -0.012975787, -0.01353037, -0.013300889, -0.006063473, 0.011157787, 0.01921292, 0.011406039, 0.024793865, -0.0011238485, -0.009590781, 0.009057154, 0.042145494, -0.010066612, -0.0038654874, -0.027596466, -0.0146818375, -0.0005396864, -0.029653879, 0.005991321, -0.001106665, 0.0002555022, 0.0154354125, 0.015117348, 0.007445764, 0.010522002, 0.0071222195, 0.007780003, 0.0002981476, -0.00026696874, 0.0050791563, -0.023432229, 0.012922205, -0.01680493, -0.003756843, 0.00012260575, -0.0054224967, -0.014643569, 0.006524031, -0.0168887, 0.036607057, -0.002010895, -0.009518067, 0.014780808, 0.005263956, -0.0083617475, 0.021671478, -0.0128390845, -0.013658004, 0.018676953, 0.00047554448, 0.0034875283, -0.008597821, -0.008286665, 0.002175376, 0.00642376, -0.012278223, -0.019244937, -0.008167989, 0.0019286746, 0.006528422, 0.0017960774, -0.0015467207, -0.017361578, -0.003989024, 0.00047002832, 0.0019420207, 0.008402278, -0.014844677, -0.005377721, -0.013912808, -0.012589379, 0.007989586, -0.0045666457, -0.0205128, -0.0108104395, 0.019336738, 0.0031117108, -0.020936541, 0.012268343, 0.0016061375, -0.0010362801, -0.018575959, 0.020544251, 0.021559538, 0.022377335, -0.03575508, 0.0037649095, -0.0018494055, -0.03950184, -0.016808936, 0.0035589258, -0.0026596265, -0.0011067962, -0.01745707, -0.029449083, 0.003191554, -0.017479122, -0.001571244, -0.01845527, -0.008484144, 0.00487516, 0.009585869, 0.0033335688, -0.005022078, 0.021782298, -0.000588426, 0.018686442, -0.01403198, 0.0012871937, -0.01963915, -0.01424364, 0.0009153381, 0.010483032, -0.008545147, -0.0102071995, -0.028394856, -0.00030010517, 0.0055745277, -0.023525363, -0.0057331906, 0.008880831, -0.02449616, 0.0013816156, 0.020801403, -0.015135891, 0.00969427, -0.01510726, 0.016748374, -0.002963117, -0.0061633643, 0.0048986524, 0.00225529, 0.01605577, 0.0026835992, -0.011249489, 0.017488359, -0.0006850368, 0.00602977, -0.00076086225, -0.0275611, -0.004241385, 0.016191894, 0.030753046, -0.0027014692, -0.006125574, 0.00027697437, -0.006518551, -0.0013909154, -0.020348588, 0.0073730783, -0.023568368, 0.023181178, 0.0042841383, -0.00883114, -0.003931259, 0.0003383847, -0.0023953004, 0.0037223252, 0.0060122656, -0.01434159, -0.019023594, -0.008602984, -0.0137641225, -0.017601287, -0.010524987, 0.013076243, 0.016508566, 0.010216022, -0.005118951, 0.0029810856, 0.024858445, 0.02076868, 0.002610561, 0.0187548, -0.0063384566, 0.030494979, -0.0037449575, -0.0011034772, -0.012032371, 0.026857626, -0.006151475, -0.00055482093, -0.008492867, 0.012666743, -0.019436352, -0.01591107, 0.016444648, 0.005950308, -0.0050755087, -0.0040428066, -0.007665494, 0.005198069, -0.018954355, 0.002115684, -0.0074276156, 0.005526521, -0.009084831, 0.008981895, 0.015150645, 0.0021013957, -0.0051521817, -0.0067104404, -0.0006847311, 0.01554317, -0.01843569, -0.013169111, -0.0069682933, 0.0053003216, 0.007412153, 0.011856619, -0.0056223, -0.004330948, 0.010437994, -0.009659974, 0.0014535933, -0.009132419, -0.0084664645, 0.004146513, 0.013476089, -0.01634424, 0.008948275, -0.019329337, -0.0061526806, 0.0212989, -0.0027316175, -0.03227406, 0.005623197, -0.0071151815, 0.0036756156, -0.0037758828, -0.0037794155, 0.0033261052, 0.0006954613, -0.027986072, 0.01694248, -0.011913192, -0.00091254496, -0.0051430687, 0.014658072, 0.025020232, -0.021223327, -0.0004411715, 0.009590534, 0.10936789, -0.01582612, 0.0034838596, -0.010047524, -0.018160904, -0.023680797, 0.019147232, -0.008880954, 0.01909015, -0.024435587, -0.0070388075, 0.010949389, -0.010473605, 0.01608264, 0.02960219, 0.013559736, 0.02300026, -0.00046082423, -0.010964388, -0.00019993524, -0.0053473115, -0.01231502, 0.003941124, 0.05289356, 0.0065378128, 0.014246121, 0.0117165465, 0.006532056, -0.003580975, -0.0008206685, -0.0008996485, -0.0156036755, 0.014603441, 0.007572972, -0.017972212, -0.007950074, 0.013951187, -0.09165055, -0.017644126, 0.010001305, -0.007820114, 0.008915158, -0.005327584, 0.005820164, 0.0016727903, 0.019680995, 0.02749548, 0.030145502, 0.004389741, 0.036647495, 0.013522523, 0.0056521753, -0.023440955, 0.011477976, 0.0013010919, 0.03299389, 0.0065621873, 0.023222607, -0.009754273, -0.0017090301, 0.0023429673, -0.004671784, 0.002661959, 0.016087491, -0.018684069, 0.01035119, 0.01909263, -0.0051863277, -0.010613412, -0.012902334, 0.015393063, -0.041429173, -0.000844364, -0.012937662, -0.023130277, 0.005087445, -0.027084373, -0.0033238162, 0.008156256, 0.020191543, 0.002088833, -0.004141232, 0.0030892577, 0.016890703, 0.011032125, 0.0048950613, -0.009073664, -0.01896739, -0.01973472, -0.024916036, 0.016680034, 0.024877349, 0.008187916, -0.014400959, -0.012381603, -0.0072113243, -0.002706691, -0.00042704868, 0.006368901, -0.007953872, 0.02713947, 0.014603452, -0.011556015, -0.005390107, 0.00006402326, 0.0011583876, -0.0012401236, 0.012809404, 0.0010810556, -0.015106697, 0.012997862, -0.0295846, 0.016358031, 0.016387269, -0.00007273495, 0.007708406, -0.0040929765, 0.015673425, -0.006147276, -0.019708589, 0.022659775, -0.026198843, -0.014958556, -0.011710152, -0.01730364, -0.0053626257, -0.008396802, -0.045932792, 0.015803207, 0.00973878, 0.031140806, -0.0020091424, -0.012785998, 0.009632889, -0.0030716343, -0.0023168828, 0.001410972, -0.018361965, -0.009759056, 0.0180582, 0.0013425611, 0.016300596, -0.020536883, 0.0013735575, -0.00765944, -0.0021060612, 0.0020086602, 0.015370625, -0.011320857, 0.0014333896, -0.032723736, 0.00936961, 0.0041483683, 0.0020958395, 0.0053391205, -0.0013821948, 0.0005950967, -0.006806304, 0.000036166017, 0.008192865, 0.0025133279, -0.002569265, 0.019130208, 0.008791273, 0.017063057, -0.009702946, 0.0036712799, 0.0038604483] +SELECT llm_embedding(cast('file://$resources/llm_test/embedding.txt' as datalink)); +llm_embedding(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/embedding.txt as datalink)) +[-0.021955958, -0.024112409, 0.010994452, -0.011615187, 0.03107838, -0.024938945, -0.029811664, -0.018000955, -0.01751671, -0.0007840055, -0.021467123, -0.014996716, -0.0045815744, -0.026652282, -0.016832603, 0.009745739, -0.016642446, 0.00514828, -0.015859831, -0.010222016, -0.010362088, 0.0056358385, -0.015048031, -0.0031982209, -0.010094931, 0.016682236, 0.008610655, -0.010177104, 0.0035889482, -0.011772896, 0.0020790452, 0.0064958483, 0.007662446, -0.011871371, -0.0060495464, -0.00031009244, 0.01244862, 0.017252011, 0.0045427964, -0.0020739902, -0.010757486, 0.007304529, 0.0013274339, 0.014101962, 0.008301316, 0.029145958, 0.0059295893, 0.008040844, 0.007543537, -0.016788509, 0.02117831, -0.014382508, 0.0048556137, 0.0018720219, 0.0025224255, -0.017484922, -0.009047812, -0.004784566, 0.011001231, 0.001979824, -0.018123543, -0.006044478, -0.017557709, 0.0064400537, 0.031730548, 0.012659235, 0.0018322447, 0.0010248604, -0.0063489038, 0.008556809, -0.025164645, 0.0020938488, 0.002503912, 0.004343821, -0.004806065, -0.016200012, 0.013988646, -0.001762432, -0.009467125, -0.0026530595, -0.02285559, 0.018910365, 0.0032985576, -0.014895749, -0.0032209384, 0.00066495646, 0.018467078, 0.013180945, 0.027700555, -0.00892321, 0.018167712, -0.0055163656, -0.0067893127, -0.0148088075, 0.011647559, -0.010386176, 0.017616654, -0.016375579, -0.0059830374, -0.013574454, -0.0011587754, 0.017854352, 0.009558709, 0.03177031, -0.016512847, 0.012346981, 0.024569793, -0.008568929, -0.008977197, 0.0049745953, -0.0035037443, 0.0062740296, -0.013347865, -0.0048455335, -0.00947347, -0.0186149, -0.013720566, 0.020388164, 0.0067055165, 0.02716808, 0.019495538, 0.015608861, -0.0069132647, 0.011870762, -0.017110685, -0.0044163014, 0.027169967, 0.016619323, 0.043965526, 0.0010070957, 0.00588191, -0.006821795, 0.0029744068, -0.02090374, 0.0090806065, 0.0059192227, -0.014213187, 0.018322522, -0.008240031, -0.01576897, 0.0005875202, -0.0004314609, 0.011276895, 0.0133925, 0.006008923, -0.007348644, -0.008733263, -0.0030368967, 0.030700514, -0.025163442, 0.029363861, 0.014590908, 0.021085236, -0.011104404, -0.022099275, 0.0143173225, 0.0012046895, -0.01608151, -0.014419335, -0.004113009, 0.0016428409, 0.011147418, 0.0060133194, 0.0055229077, 0.00668409, 0.018997602, -0.0029479868, 0.008442573, -0.020896008, -0.0037291164, -0.024765892, 0.015060678, 0.029370368, -0.0010357525, 0.0049831257, -0.011261099, -0.013739087, 0.044590533, 0.001162745, 0.025493084, 0.0062676133, 0.022893438, 0.0042007635, 0.0054039843, -0.031885598, 0.0064190817, -0.016837684, 0.008460254, -0.0028312034, 0.003459366, 0.004236076, -0.023662303, -0.0005296986, 0.031000057, 0.015816644, -0.0020913233, -0.0041961847, -0.00778315, -0.01452117, 0.00021972816, -0.0019935837, 0.009899315, -0.023027638, -0.007821907, -0.0063062147, 0.011977543, 0.00040162192, -0.024744155, -0.0129168155, -0.0015326833, 0.016515004, 0.01676422, -0.02011962, -0.0150525225, 0.027267167, 0.032580465, -0.0023308718, 0.0020269847, 0.0011390615, 0.007163826, 0.028634854, -0.006309947, 0.013062011, -0.011996805, -0.020130314, 0.0076689627, 0.0087872865, 0.007851165, -0.013061091, 0.04267848, 0.007071549, 0.03381668, 0.000031815776, 0.0125218015, -0.006769284, 0.00495695, -0.0054701823, 0.026578967, -0.0045617674, 0.011082841, -0.0018900802, 0.004628099, 0.0040633986, 0.0036100105, 0.010143743, -0.018468685, -0.0016826128, 0.027931262, -0.0076538366, 0.0067186914, -0.016996909, -0.007044107, 0.0009204443, -0.004973405, -0.0044928314, 0.011293968, -0.0011603358, -0.025184643, 0.0031888485, 0.025241656, -0.014441112, 0.015106308, 0.0019879283, 0.006288269, 0.003611586, -0.014960857, -0.014449708, -0.015573862, -0.012051056, 0.011348667, -0.012265347, -0.004987733, 0.012279564, -0.012861947, 0.0022352627, -0.015725033, 0.0011230859, 0.05116814, 0.011448459, 0.010978957, -0.015474335, 0.055740412, -0.0014891246, 0.0029775708, -0.012443402, -0.012291113, 0.013365482, -0.0046527577, 0.021232648, -0.018799884, -0.0016732217, 0.0078065773, 0.03457722, 0.0063071554, 0.00040213563, -0.0039982023, 0.011821282, 0.0020308201, -0.0035298155, -0.023360932, -0.01194743, -0.015073529, -0.0020111324, 0.0019022666, 0.036552403, -0.0034664366, 0.01524078, 0.019161634, -0.005447126, 0.010698744, 0.0048208525, 0.027015673, -0.011280972, 0.012382409, 0.0031957102, -0.0009891662, -0.002077141, 0.006611531, -0.010195573, -0.017164454, 0.06607552, -0.007741642, -0.0077565564, -0.00397164, -0.003115766, -0.005808385, 0.008120414, 0.0075109866, -0.021332407, -0.030565144, 0.0022836, 0.01687146, -0.02104161, 0.005102496, 0.012411423, 0.0050991056, 0.005249938, 0.005480038, 0.00001042351, 0.011392932, 0.0013273751, -0.01319383, -0.015217519, 0.007903439, -0.011142062, -0.0034155583, -0.011581272, -0.0046569873, 0.014914816, -0.017650869, -0.000117309704, -0.0077963606, -0.008024136, -0.015238717, 0.0046499413, 0.014624952, 0.0050815744, -0.006709254, -0.004673591, -0.0014365719, -0.016261226, 0.012930387, 0.0053507728, -0.023763591, -0.018125547, -0.0053932676, 0.027573505, 0.011143846, -0.01925579, -0.009917108, 0.022185512, -0.0032105392, 0.011380804, 0.03130053, 0.0062829372, -0.009852959, -0.006929876, 0.0026838358, 0.016545653, 0.0011237254, -0.0051492057, -0.0060320287, -0.023093542, -0.016362784, 0.023877516, -0.016849698, -0.00019019004, -0.015760401, -0.006325622, 0.024402106, 0.008419061, -0.012604045, -0.018397756, -0.027029615, -0.034182563, 0.004275695, -0.018512255, 0.015223738, -0.002298939, 0.01057648, 0.0038791338, 0.0015043914, -0.031966858, -0.02935397, 0.0036637217, 0.010142434, 0.032211915, -0.016711973, -0.011719896, -0.0014231665, 0.006420671, 0.005248146, 0.02440263, -0.0031118998, 0.024492072, 0.006618455, -0.0020989038, -0.0067302184, -0.02032872, -0.0022487575, 0.013951547, 0.018667594, -0.010286443, -0.015299047, -0.019201495, 0.009147032, 0.017074488, 0.003679838, -0.015142681, 0.004803891, 0.010780977, 0.0062028817, 0.0018141051, 0.002153185, -0.0031887984, 0.02326359, 0.000854016, -0.02218024, -0.017870624, 0.010544586, 0.010627926, 0.028923651, -0.009599587, -0.009246762, 0.024305006, 0.012272373, 0.023647783, -0.012429135, -0.008228059, -0.014298729, -0.009483858, -0.009582769, 0.015137394, -0.006105718, 0.011186852, 0.0062086685, -0.006783909, 0.019086264, -0.058913767, -0.0069856965, -0.0070017027, 0.020458532, -0.018540531, 0.013970624, -0.0036587755, -0.029031549, -0.015737504, -0.007601849, -0.001232314, 0.018283414, -0.009214379, 0.007501297, -0.0120324185, 0.0013568954, -0.011704797, -0.011073093, -0.004347851, -0.0009535615, -0.0148813175, 0.005931461, 0.010091611, 0.01229224, -0.02499653, -0.0036683804, -0.004759539, -0.0017088536, 0.012689344, -0.010638765, -0.0055148145, -0.009323423, -0.0014303837, 0.01643444, 0.016772497, -0.008381587, 0.010930613, -0.009701353, -0.008236038, -0.006485983, -0.003168949, -0.0000322141, 0.02364691, -0.01376722, 0.0012259972, -0.001628085, 0.030767277, 0.0035013559, 0.024096621, 0.0060895598, -0.0006866059, -0.0011966157, -0.006384428, 0.005663016, -0.031977672, 0.02800659, 0.018354602, -0.012901922, -0.022800632, -0.01239031, -0.0014819846, -0.022010393, -0.0015128284, 0.005966662, -0.009738945, 0.0015486861, 0.0073063537, 0.016023336, 0.018787991, 0.0017969445, 0.004550849, 0.00949244, -0.020368455, -0.0018723144, 0.00023575054, -0.010045346, 0.0008747041, 0.005387957, 0.021194745, 0.0070175175, -0.018594166, -0.030562403, 0.017014429, 0.022430953, 0.0036623972, -0.010982005, 0.007840499, 0.008740815, -0.031675234, 0.011605726, 0.0077475635, 0.008794924, -0.0060337605, 0.014265757, 0.002066351, -0.010989392, 0.014462804, 0.014716118, -0.0114536565, -0.016116548, -0.0014285949, -0.0078055635, -0.011100529, -0.00040516647, 0.00943216, 0.0055793347, -0.0049571153, -0.019806359, -0.0023900769, -0.011680982, -0.0036949096, 0.006917613, -0.010182811, 0.023671664, 0.022915492, 0.020284899, -0.016762791, 0.023048472, -0.025670018, 0.0034855993, -0.038534023, 0.018547582, -0.0039012684, -0.014674778, 0.006229609, 0.008214843, -0.029004078, -0.0046536284, -0.011137207, -0.011119046, 0.018482866, -0.014318577, 0.0070160204, 0.027650386, -0.010393322, 0.019847307, -0.012993687, -0.020382468, 0.003243301, -0.020403987, -0.010788588, -0.010079722, 0.0103552425, -0.004939606, 0.002427746, 0.00717152, 0.01979532, -0.015783546, 0.01656535, 0.001170621, -0.0029399616, -0.009035179, -0.032702297, 0.009882132, 0.008239087, 0.04113215, 0.013063113, 0.044108085, -0.013233501, -0.009222621, -0.011635659, -0.012826178, -0.00048456027, 0.027917823, -0.009682834, 0.002712197, -0.0024573137, -0.00990747, -0.024183793, -0.011651541, 0.009005753, 0.00008049041, 0.00039738114, -0.020755583, 0.0038094842, -0.0037014035, 0.0024803376, 0.009357803, 0.0076348186, -0.023319798, 0.02281202, 0.014123299, 0.0062326896, 0.06103098, 0.008865868, 0.0075916834, -0.0071808784, -0.009386674, 0.005490885, 0.0050085695, -0.013782054, -0.010372147, 0.02843295, -0.0021623413, -0.0315211, 0.00067951984, -0.012461821, -0.02621536, 0.015225564, -0.023432884, 0.00249231, -0.0071040452, -0.0152858775, 0.01048535, -0.01027628, -0.0032243365, -0.018654946, 0.014987736, -0.03168651, 0.009276951, -0.002078957, 0.017233182, -0.0299795, 0.006008353, -0.005860855, -0.016662437, -0.0038227914, 0.0027982683, -0.024608694, 0.0055922465, 0.0012468908, -0.013823309, 0.0109821465, 0.02310923, 0.005755869, 0.0226146, 0.02668019, 0.00022205047, -0.00842529, 0.006664093, -0.0210233, 0.023088772, 0.0064713275, -0.011487268, -0.0023176833, 0.016765675, -0.00648739, 0.0073072133, 0.0015391668, 0.022490453, -0.013754608, -0.02246985, 0.0014798099, -0.0003750215, -0.0067982003, 0.018032992, -0.00060068915, -0.0047893594, -0.009680243, -0.026499048, 0.01822373, 0.10144419, 0.0010469465, 0.019845149, -0.011150197, 0.012937211, 0.000075727425, 0.006884436, 0.00046998024, 0.011159121, -0.02113391, -0.001655131, -0.008632083, -0.018555904, 0.010178563, -0.008483208, 0.012026744, -0.004591733, -0.0037839767, 0.0038250408, 0.0103322705, -0.00471575, 0.003441815, -0.0017952122, 0.0015280626, 0.018105881, 0.0019347465, 0.0073270765, 0.017063627, -0.0075088628, -0.008822091, -0.0096809575, -0.0075481213, -0.010989515, -0.0026282615, 0.011811266, -0.0005963113, -0.020637797, 0.007248766, -0.0023882918, 0.004296774, -0.0047153896, -0.013387994, 0.015491823, 0.010406756, 0.00066403166, -0.0002682969, 0.0053202207, 0.008173875, -0.0030184719, -0.013046678, 0.012754033, -0.0053971857, -0.00081337185, -0.004279201, 0.0031516405, -0.004088258, 0.011347486, 0.015165127, -0.010187261, -0.011302143, 0.01559223, 0.0065590674, 0.0075921733, -0.0081437575, 0.0073093562, -0.00063985167, 0.0040387656, 0.006875872, -0.0038001703, -0.034391154, 0.017660564, 0.0030014515, -0.011248113, 0.07661098, -0.017896358, -0.006254863, -0.0048702112, 0.00011627421, 0.00051480334, -0.0060836636, -0.000790886, 0.036183525, -0.0043827863, -0.0023569388, 0.0035409192, 0.023488859, -0.002540244, 0.022664594, 0.0077871783, 0.02741269, 0.010185235, -0.0013075056, 0.026312139, -0.012505721, -0.019249383, 0.006867166, -0.010897961, -0.01236665, -0.016397545, 0.003406381, -0.01668264, -0.014908236, 0.0021068584, 0.0031757532, -0.018688902, -0.0026135414, -0.021406017, -0.010698167, -0.0064401235, 0.03884463, -0.001354515, 0.008072623, 0.032464106, -0.011725127, 0.012479823, 0.0037959614, -0.0025231396, -0.0078085633, -0.00892294, -0.007108785, 0.018027326, -0.018836161, -0.022072254, -0.021926617, 0.0032491204, -0.013168573, -0.002821395, 0.007340818, 0.009170315, -0.00024097423, 0.024138954, 0.029669644, -0.026628913, -0.0044956887, -0.0035684104, 0.009053622, 0.01650071, 0.038205415, 0.0095594125, 0.0115846265, 0.0030913774, -0.0106419055, 0.018519916, -0.011817539, 0.03254155, -0.011964113, -0.023015536, -0.022455558, 0.0059526465, -0.009919127, -0.023867663, -0.0014340245, 0.003396673, -0.0046614916, -0.02022827, -0.027044976, 0.020077594, 0.00800064, -0.007708891, -0.029502554, 0.000987105, -0.008505533, 0.007329152, 0.028671943, -0.015621053, 0.01373015, 0.0019219276, -0.0055576363, -0.025863366, -0.010310445, -0.002463555, 0.022472069, 0.03558441, 0.005190759, 0.018032651, -0.009176394, 0.0064199674, -0.00854136, 0.010244497, -0.01651225, -0.015355518, 0.02369519, 0.009676434, 0.023619153, 0.07543789, -0.03093738, 0.020435499, -0.006978717, 0.01330483, 0.006278122, -0.008477599, -0.026291894, 0.010942922, -0.003664232, 0.00071940274, 0.019700555, 0.0070916433, -0.010485196, 0.010567573, -0.038442597, -0.0014513945, -0.06996274, 0.01919525, 0.020141732, 0.02096601, 0.0070212386, -0.017366346, -0.014313125, 0.018373437, 0.0109719625, 0.03950105, -0.001985094, 0.0074539995, -0.0072380994, 0.022318361, 0.0012266736, -0.0057340874, -0.0025166469, 0.017486645, -0.0013579007, 0.014075021, 0.0032137204, -0.011704835, -0.0058565526, -0.005710829, -0.008343295, 0.002358275, -0.00020055975, -0.016928028, -0.008910634, -0.014438459, -0.04970226, 0.015742742, 0.021745995, 0.006527004, -0.004189062, 0.004268867, -0.024300694, 0.058089323, 0.011742409, 0.0004328926, -0.01891901, -0.01625144, -0.009040683, -0.010138129, 0.013584346, -0.0047484576, 0.014944488, -0.015048989, -0.002249103, -0.016973678, 0.012349355, -0.01124267, -0.0005340537, 0.012717541, 0.016780362, 0.004336479, 0.0040245196, 0.015554585, -0.0032088188, 0.017269926, -0.0011161575, 0.01023152, 0.014109432, 0.007839069, 0.021882698, -0.0128946295, 0.020536881, -0.05986195, 0.015341552, -0.019988349, -0.00081820413, -0.008224828, 0.025645336, 0.0055800052, -0.007863451, 0.006009431, -0.00006552573, -0.024701558, 0.005486448, -0.00115422, 0.019971814, 0.010341841, -0.007172267, -0.002226517, 0.0045652194, 0.007230404, -0.03196115, 0.01971862, 0.017034348, 0.01079349, -0.014063093, 0.014314188, 0.00558319, 0.016345989, -0.0033025423, 0.008782176, -0.010381073, 0.0033613953, -0.031176116, -0.000062578314, -0.00062386604, 0.020109816, 0.0013206709, 0.001539548, 0.0033350305, -0.006886001, -0.004506687, -0.01216515, 0.011853934, -0.0007689404, -0.034321956, -0.010535746, -0.013218742, -0.021265334, -0.0036528371, -0.0043933606, -0.0019115956, -0.005085378, -0.016077368, 0.0071355086, 0.02175208, 0.02383183, 0.006005601, 0.0016132864, 0.004431825, -0.013476467, -0.010148468, 0.0076254127, -0.011818579, -0.046460178, 0.006837738, 0.0057580187, -0.011597905, -0.00063720567, -0.0029602342, 0.026979558, 0.00059183507, -0.023791218, -0.010088606, 0.010388434, -0.034724876, -0.008236227, -0.0001820325, -0.011769285, -0.0006846703, 0.007158518, 0.0008850605, -0.023149358, -0.012244097, -0.022034261, -0.006025731, 0.004411871, -0.004712875, 0.008989394, -0.003249586, 0.012653094, -0.01281871, -0.020064818, -0.033938546, -0.019967336, 0.016110104, 0.021615699, -0.0057445946, -0.019263515, -0.0108292615, 0.0074683037, 0.0094574625, -0.006174953, -0.028844094, 0.0018843992, 0.0086057335, -0.010209518, 0.017309444, -0.015434825, 0.00082279654, 0.00035043352, 0.012187942, -0.018246554, -0.02373449, -0.055346552, 0.0030491578, 0.004612348, -0.0064234147, 0.01054554, 0.012548431, 0.004271905, -0.013582806, -0.0034178714, 0.0025627478, -0.037448607, 0.008511217, -0.01822087, -0.0033362776, 0.017043134, 0.008669464, 0.009163387, -0.0032704014, -0.0012238781, 0.004323949, -0.0006384995, 0.006594046, -0.027441563, -0.00082690496, 0.030650258, 0.017669806, -0.0034088453, 0.00672369, 0.013230912, -0.0111086685, 0.0014874312, -0.0062925373, -0.0073495153, -0.022669343, 0.00906247, -0.0077429726, -0.011144787, -0.005946349, 0.00016227459, -0.026876751, -0.033713836, 0.009931155, -0.013011922, -0.0018418621, -0.0017124224, -0.03147763, -0.020215036, -0.010520204, 0.0030611132, -0.0123032695, -0.019436432, 0.027775774, -0.0014252618, 0.004727087, -0.0038017198, -0.012815549, 0.008921606, 0.012556599, 0.011258763, -0.019262102, -0.012496168, 0.014971811, -0.002198738, 0.010966205, -0.008796619, -0.01957876, 0.028601585, 0.00089569, -0.021910721, -0.008920018, -0.0142175825, -0.015599591, -0.0029582162, -0.005106, -0.0054939715, -0.0006270688, 0.0023061254, 0.016606305, 0.011650248, 0.010464634, -0.049644988, 0.023363778, 0.018895773, -0.014231053, -0.0024015848, -0.007746987, -0.012141293, 0.014634419, -0.009586936, -0.012660519, 0.000058445756, -0.019817563, -0.006353821, -0.00584065, -0.010418512, 0.012496899, 0.011857602, -0.0064591873, -0.008102868, -0.0077454452, 0.041403476, -0.010108273, 0.0075285104, 0.0014286469, 0.005105304, -0.016211608, 0.0035728696, 0.008610527, 0.003911059, -0.007145042, -0.0076944693, -0.01690046, 0.011259115, -0.007692241, 0.01303568, -0.024192411, -0.008378573, -0.00031708714, -0.005583413, -0.005369078, 0.0064027463, 0.011340362, 0.008431784, 0.017673062, 0.0043831174, 0.014750672, 0.012784641, 0.00644515, -0.0129009485, 0.003202517, -0.013320603, 0.0010052914, -0.007999084, -0.00073635887, -0.023445774, -0.014920011, -0.0020658083, -0.0022660685, -0.005872412, -0.0013881527, -0.0023981505, -0.01351621, 0.024396965, -0.002554154, -0.022273745, -0.012678976, 0.0043622437, 0.0134514645, 0.027598593, -0.009175108, -0.00894022, 0.012978143, -0.010593132, 0.0049131005, -0.0016672278, -0.014355146, -0.0009957327, 0.006306513, -0.014461402, 0.000928197, -0.020860014, -0.019100765, 0.012859691, 0.023781314, -0.011136561, -0.022290621, -0.014636765, 0.0053479155, 0.003979741, 0.002948891, -0.01209569, -0.00845997, 0.0016151428, 0.009704375, -0.0055186404, -0.022550147, 0.018099133, -0.004623302, 0.010365483, -0.022734234, -0.010157954, -0.02228518, 0.0013232623, -0.021323336, -0.006545722, 0.020385738, 0.002351329, 0.0041714804, -0.015347394, 0.0167386, 0.000966765, 0.006588579, 0.01867216, -0.0005553179, -0.0039279545, 0.018869534, -0.013686664, -0.027177928, 0.0028365029, 0.022012254, 0.0043645944, -0.011258566, 0.008767419, -0.0069479947, 0.018386953, 0.007330164, -0.01178887, -0.0028477642, 0.0021110617, 0.013203438, 0.0033346943, 0.0021811847, -0.014629346, 0.0060764817, 0.002958772, 0.0047142715, -0.01858633, 0.0019285996, -0.017546104, -0.0034806665, 0.00069574284, -0.011643851, 0.016558727, -0.009696839, -0.01601101, -0.011559568, 0.0057887114, -0.01985188, -0.008714834, 0.0009936743, -0.013472092, 0.0086886715, -0.005470616, -0.014890931, 0.0118633285, -0.0050262115, 0.004620779, 0.009363215, 0.0043392875, 0.020937435, -0.004532457, -0.014702744, 0.006352968, 0.0020106174, 0.01624653, -0.011163373, -0.021005161, -0.015978051, -0.0011857201, -0.0100842, -0.00764735, 0.0040403917, 0.005290606, 0.0001503999, -0.017284043, -0.10699789, 0.013487894, -0.01516326, 0.016484082, 0.01383147, -0.014355009, -0.004387414, 0.011764669, 0.0058831833, -0.0077893394, -0.009123861, -0.0029105863, -0.0015256373, -0.0010505711, 0.0054127104, 0.0014342966, 0.007096173, 0.0005520386, 0.031036692, -0.011921294, -0.008797786, -0.008342389, -0.023932554, -0.011099847, 0.0064543267, 0.017667891, -0.017343218, 0.032555167, -0.0083144605, -0.024564257, 0.0025587364, -0.0073633865, -0.01320471, -0.007030427, -0.004197502, -0.0024189746, -0.014331019, -0.0034622801, 0.03979928, -0.01143036, 0.010499928, 0.014958661, 0.005061897, 0.0092820125, 0.014248716, -0.0033907837, 0.0016453897, 0.0014864942, 0.011619948, -0.0052863183, -0.008450587, -0.018679092, -0.0052126516, -0.00016842272, 0.0050580893, -0.002518014, -0.011092223, -0.011114624, -0.0027525197, 0.00504494, 0.0221013, 0.007166455, -0.0029281944, -0.023127342, 0.008665816, 0.0049971743, 0.0083394535, -0.0071145124, 0.0016031248, -0.011544086, -0.01733805, -0.0028529703, 0.003604035, -0.01580361, 0.0054746354, 0.018893039, -0.002379647, -0.010367641, -0.001509343, 0.012107591, 0.019265076, 0.005331771, -0.0066674803, -0.0040950393, 0.019240586, 0.02668884, -0.009568791, 0.016906748, 0.039804038, 0.008898975, -0.00781353, -0.022702985, -0.02123132, -0.013353117, -0.027743874, 0.021865062, -0.013813834, -0.008851488, 0.025454747, 0.0046648122, -0.015923582, -0.008627779, 0.0055889618, -0.016734254, -0.014426453, 0.030030526, 0.0010216756, 0.0010644458, 0.0011039376, -0.017380234, -0.0017870449, -0.010164748, 0.011665284, 0.019154983, 0.009310585, 0.025548644, 0.0068379617, -0.008112621, 0.016936004, 0.008656372, 0.00040059758, -0.0072024413, 0.000064649066, 0.009362295, 0.026078165, 0.01181541, -0.004490749, -0.009786491, 0.011399331, -0.0047271214, 0.0046840524, -0.016185066, -0.01509593, -0.006903398, 0.0101299845, 0.010640374, 0.030768637, 0.016641377, -0.007497235, 0.009224107, 0.013185231, -0.012742912, 0.00055194367, 0.02134122, -0.004422194, -0.0060740835, -0.023636157, 0.0034716502, 0.017278515, 0.00003819513, 0.014893529, -0.0006128582, -0.010041615, -0.0007667996, -0.004391994, 0.0109469285, 0.012984447, -0.013820553, 0.01029474, -0.006683183, 0.004498154, 0.00072382484, 0.00012502176, 0.019257803, -0.013494891, 0.011577294, -0.00012660882, -0.008355303, -0.009254156, -0.006831846, -0.003485628, -0.029103043, -0.00058848725, 0.0072164577, -0.009204837, 0.014983426, -0.023934964, 0.012855685, -0.013281985, -0.00016511594, 0.0048529278, 0.017002726, -0.017633026, -0.00309781, 0.018269556, -0.013539923, 0.017761368, 0.012661895, 0.007828591, 0.004617946, 0.026834887, -0.0061360113, -0.00139224, -0.0036910106, 0.00866288, -0.0026139063, 0.0135196755, 0.011271041, -0.006736633, -0.0033534323, -0.015741177, -0.0022108168, 0.0010421341, 0.0025610637, 0.009482556, 0.004722316, 0.007548523, -0.01337747, -0.009547312, -0.002208437, -0.022324622, -0.011158331, 0.015123495, -0.00617654, -0.001397285, -0.0107547585, -0.007324122, 0.0036361315, -0.02670041, 0.018033542, 0.007538904, -0.021425875, 0.021535786, 0.018833721, 0.019926243, -0.011355691, 0.029167902, 0.023375591, -0.00074628956, 0.014924361, -0.025567714, 0.0023894827, 0.017238658, -0.002909643, -0.0034555725, 0.011383404, -0.00079123606, -0.0046985224, -0.02884859, 0.009163954, 0.010192562, -0.012569571, 0.019842047, 0.035503197, -0.00015561214, 0.003803062, 0.01251399, 0.0009304418, 0.0006291984, -0.004074756, -0.014590097, 0.005257375, -0.011503353, 0.0011045056, 0.00042356586, -0.024911642, -0.006850012, -0.012694418, -0.0042082584, 0.009776603, -0.0011461172, 0.0031745122, 0.020695243, -0.0097493315, -0.018653722, -0.017458353, -0.013319945, 0.009966323, -0.008799916, 0.008613801, 0.0068666986, -0.009415657, -0.0014104651, 0.010938324, -0.00025571327, 0.0062075662, 0.017442092, 0.020933907, -0.007408999, 0.008991783, -0.008437913, -0.00528488, 0.012960808, 0.0049947314, -0.017971152, 0.0059522185, -0.0052006156, 0.011921062, -0.013060628, -0.00016973032, 0.014560991, 0.000782067, 0.022450782, -0.013551691, -0.0019292834, 0.011270744, 0.016910028, 0.007545131, 0.0071708346, 0.0045038494, 0.011803429, 0.007980685, 0.035460126, -0.013976337, -0.0047998326, -0.018052854, 0.0030239234, -0.0031759776, 0.004575059, -0.022172023, 0.0039273975, -0.0031497923, 0.012068103, 0.018801227, 0.0008202687, 0.005553182, 0.0036664053, -0.0021898034, -0.00030967244, 0.002516749, 0.0063767293, -0.003820206, -0.014622092, -0.025069375, 0.011340596, 0.010682002, -0.0055671926, 0.021191126, 0.005253768, -0.008825813, 0.0020059634, -0.007804033, 0.016567763, 0.0070852595, -0.008452691, 0.0027140381, 0.011566829, 0.042288594, 0.015803805, 0.0033402112, -0.015991263, -0.009188603, 0.0045092204, -0.0066915387, -0.022753747, 0.0064984746, -0.0038357796, 0.0119744, -0.0027063503, -0.0015168705, -0.005917008, -0.0048473533, 0.014729465, -0.008276277, 0.023541983, 0.014126732, -0.010573727, -0.0144707225, 0.0040865997, -0.016086899, 0.01683731, -0.017303566, -0.009199098, -0.0069095152, -0.0065102205, 0.009722693, 0.006581351, -0.015284087, -0.0131527735, 0.006136387, 0.026657494, 0.0018443039, 0.027052263, 0.018913845, -0.016975924, 0.01724067, -0.023707619, 0.018934863, 0.014634982, -0.017958868, 0.006523211, 0.0038003915, 0.06337754, -0.009312712, -0.0040753093, -0.013067489, -0.0054917973, -0.009667246, 0.0039506713, 0.0020622122, 0.054925133, -0.000875993, -0.0004018072, -0.007145906, 0.008041381, -0.01609777, 0.02327153, 0.022279818, 0.0068653557, 0.012107198, 0.017338239, 0.014946092, -0.017696533, -0.011591639, -0.010618659, -0.009328345, 0.00983521, 0.004017561, -0.0016090301, 0.19462596, 0.0010705553, 0.021445967, -0.018382793, 0.010067022, 0.046067316, -0.00040864645, -0.0067058965, 0.0118878, -0.011519615, 0.00882001, 0.005906862, 0.006703563, 0.0064721135, -0.02649386, -0.0075024525, -0.016244395, -0.017822819, 0.0061873686, -0.0114016645, 0.006118054, -0.019840602, 0.012553186, 0.008914689, -0.0006169469, 0.00067978905, 0.0076054987, -0.006224976, 0.009645051, -0.0010202542, -0.014067531, 0.00039650968, -0.009325893, -0.002206645, 0.014232923, 0.019497246, 0.0022513422, -0.008522253, 0.038909853, 0.007700963, -0.0015990643, -0.015145355, -0.018335806, 0.0038119243, 0.012977498, -0.0046347957, -0.004129633, 0.004202902, -0.0041214204, -0.001558643, -0.0056231, 0.0021942682, -0.03746876, 0.04596921, -0.001734008, 0.011198331, 0.004093305, 0.009521185, -0.014107775, 0.02135097, -0.0043396307, 0.007531812, 0.025957644, -0.00569898, 0.019303786, -0.009239122, -0.0029088329, 0.004075047, -0.009532696, 0.024117803, -0.009661067, -0.015325954, -0.0027410765, -0.0070421365, 0.026252167, -0.014496782, 0.013982001, -0.0026025716, 0.0055982275, 0.005835645, -0.030261641, -0.011833044, -0.0042677936, 0.0061066314, -0.005783133, -0.0039285296, 0.00061171886, 0.023820348, -0.0053699943, 0.018862367, 0.008466461, -0.013604249, 0.0214002, -0.007034457, -0.008677496, -0.030444708, -0.0271412, -0.02650559, 0.0053219455, 0.0036288777, -0.017870756, 0.007846598, 0.003335089, 0.0022877355, -0.012692751, 0.0037509499, -0.018622091, -0.002586756, -0.012502831, 0.014241109, 0.018283833, 0.0003264069, -0.008780612, -0.007401845, -0.0030909746, 0.00093393674, 0.020613426, -0.008473763, 0.01727088, -0.0036852208, 0.020912433, -0.0025535307, -0.008679852, 0.009428723, -0.03504971, 0.0032677692, 0.008220736, -0.013881626, 0.004968461, 0.00897, -0.026565475, -0.017101284, -0.007864357, 0.0020528906, -0.0074117742, 0.020978693, -0.016525429, 0.0010830715, 0.0072916397, 0.001196439, 0.0055356086, -0.011065429, 0.011717862, 0.000053812626, -0.019390779, -0.0065903314, 0.019610345, -0.025989069, 0.032169785, 0.012773503, 0.01124975, -0.00026517193, -0.0040258467, -0.021750188, -0.0035323477, 0.0049382187, 0.0063782055, 0.013232888, 0.016934972, -0.0073086275, 0.0020843125, 0.072915465, -0.005154324, -0.0023140796, 0.0020410006, 0.00008318137, -0.0074966117, 0.018873101, -0.009451761, -0.016468985, 0.0096149305, 0.0026135335, -0.017007498, -0.00354648, 0.0030359267, -0.0071296208, 0.021844838, 0.0016442379, 0.015138836, 0.0022918493, -0.028174015, -0.009158293, 0.009707891, 0.0010757432, -0.0013964024, 0.0063494784, 0.024582652, -0.007549674, 0.0052128313, 0.015306173, -0.031364787, 0.009357084, 0.004946699, -0.0073869987, -0.012257394, -0.004172741, 0.0037381228, 0.02365574, -0.045579914, 0.013139886, 0.00023369129, 0.0228024, -0.011095507, -0.01354557, 0.010475781, 0.006556125, 0.0030201813, 0.014345835, -0.025871124, -0.0107771205, -0.0023740192, -0.0143166, 0.013140548, -0.0052608596, -0.00951915, 0.014411825, 0.007891153, 0.01776363, -0.11946309, -0.005907851, -0.0042901486, 0.006529069, 0.0074087344, -0.0140917925, 0.00015271107, 0.004701341, -0.007901108, 0.021449106, -0.021879824, 0.004958423, 0.00087517814, -0.02046175, -0.011586235, -0.011658313, -0.016922737, 0.0154437525, 0.0103291115, 0.007737465, 0.031548258, -0.028090801, 0.010836616, -0.01577225, -0.0011611204, -0.0094051715, -0.0039985995, -0.006237464, -0.021422852, -0.009718742, -0.008260759, -0.020251133, 0.0037290372, 0.004900447, 0.0009126783, 0.0022161363, -0.0032198092, 0.0032829118, -0.0032114247, 0.0064691817, -0.0028551358, 0.008331785, 0.0019724814, 0.028683884, -0.021349793, 0.016500244, -0.020774761, 0.017352238, -0.0156588, -0.01661878, -0.0011022699, 0.01120625, -0.022541123, -0.005056086, 0.0056015877, -0.0071622944, -0.0060423724, -0.005405436, -0.00061917363, 0.013421548, 0.012721829, -0.024182215, -0.0019697442, -0.015889639, -0.028589195, -0.008421778, -0.013093381, 0.021007694, 0.031212103, 0.0018010844, 0.0027205807, 0.027445538, 0.0065736994, -0.0345999, 0.030549446, 0.00056972675, -0.0061975503, -0.030216502, 0.0059772083, 0.0025399136, 0.0049210936, -0.009686645, -0.011832521, -0.010393582, 0.0024369576, 0.0017552399, -0.0023211509, 0.0147305345, -0.008743607, -0.015256748, -0.01013577, 0.0009909704, 0.026756732, 0.009189025, -0.0033321944, 0.039550934, -0.017229699, 0.0052258563, 0.018327927, 0.00517329, 0.013695743, 0.018128052, 0.009906465, -0.0003842121, -0.0014406558, 0.05730947, 0.02643843, -0.0011699923, -0.031148463, 0.002633267, 0.011679301, 0.0062675863, 0.0072922795, 0.0026469785, -0.00408225, -0.0015937153, 0.0027337791, 0.021259967, 0.012849417, -0.0069636884, -0.010648159, 0.022513133, 0.0045074937, -0.013747381, -0.0023393722, -0.0015304872, 0.00338637, 0.009899138, 0.010644065, 0.0025127933, -0.0019762414, 0.006126595, 0.004030032, 0.007700776, 0.0042840866, -0.019296918, -0.01055234, -0.03086151, -0.0052400185, 0.013823877, -0.003430395, 0.0098581705, -0.0038093159, 0.0128399255, 0.0007175004, 0.0007081934, -0.004224115, -0.007895015, -0.013572745, 0.006173229, -0.013625517, -0.009725157, -0.0109409895, 0.024906944, 0.0016155473, 0.018566983, 0.034519695, -0.013584687, -0.014810623, -0.008861566, 0.0034809937, 0.009113031, 0.0019332558, 0.002109498, 0.023517612, -0.016886245, -0.023921747, -0.0073056873, 0.007832119, 0.019307902, -0.029214459, 0.009599787, -0.00900629, 0.002805354, 0.012262907, 0.015221097, 0.032003343, 0.031993404, 0.008576794, 0.028590709, 0.0126173105, -0.007893018, 0.007999023, -0.011617967, -0.0006329882, 0.02418816, 0.01331399, 0.0048556137, 0.01717825, 0.006005446, -0.003063428, 0.012806571, -0.016457055, 0.000023066188, 0.0034499113, -0.013020801, -0.018868795, 0.026268592, 0.008902142, -0.03726166, -0.009479808, 0.0028625065, -0.014579875, -0.01240785, -0.00428935, -0.032548096, -0.007974016, -0.012680634, -0.0020411713, -0.01365382, -0.008463486, -0.013490218, 0.006806828, -0.007115409, 0.01910817, -0.01856562, 0.01133953, -0.0045634205, -0.008956342, -0.029310377, -0.00925332, 0.00056454324, 0.0008270416, 0.019938314, 0.013714213, -0.018165765, -0.004690215, -0.004496573, 0.0033059795, 0.009437804, 0.009655245, -0.032574095, 0.008659764, -0.02301606, 0.009791134, 0.0125067895, 0.016961364, -0.025957767, -0.00022238005, 0.012566352, 0.020704059, -0.009690437, 0.06312203, -0.012024612, 0.0020129234, 0.018871224, -0.029785175, -0.0011159476, 0.023754075, -0.008080397, 0.024723457, 0.01673929, 0.010284791, -0.0044765533, -0.0071533443, 0.013434616, 0.012255162, 0.015044735, -0.0010063178, 0.0015583698, 0.007979611, -0.0013127952, -0.0061044763, 0.0038117608, -0.007327803, -0.0033976522, -0.004593733, -0.0008898692, 0.009709724, -0.022621028, -0.0033393202, 0.015088241, -0.006074729, -0.006459473, 0.0026249527, 0.0020477846, 0.0019750197, -0.024844434, 0.004176487, 0.012488548, -0.0080878185, -0.025013076, -0.0044270037, -0.0065545975, 0.021124257, 0.015308596, -0.0006708252, 0.01963975, -0.008547233, -0.013163391, -0.020325469, 0.006527279, 0.01333898, 0.0028002453, -0.0056146225, 0.029957691, -0.02773684, 0.021139855, 0.00013647263, -0.010899093, -0.005092536, -0.01203069, -0.02918113, -0.009383769, 0.010569596, 0.03048185, 0.007453305, -0.018738873, -0.009001197, -0.0000363337, 0.004871784, 0.0017194358, -0.00027003576, -0.006829883, 0.02014083, -0.021773867, 0.0123567395, 0.006763189, 0.014088739, -0.022527462, 0.026229963, 0.012244106, 0.013153716, -0.006080717, 0.0030108914, 0.011852485, -0.0058223726, -0.007868152, -0.0054147835, 0.00935805, -0.006848558, -0.006909612, -0.0148604885, -0.021248404, 0.0070667844, -0.013130084, -0.00981235, -0.025140677, -0.012199921, 0.0027130719, 0.015799526, 0.0068232208, -0.001105232, -0.0022870672, 0.003953929, -0.0063442313, -0.0040961527, 0.0021530117, -0.012462828, 0.0042540617, 0.01772507, -0.02638745, 0.01660937, 0.020135501, 0.010418829, 0.001568324, 0.0014081053, 0.01836061, -0.010444957, -0.0030779825, -0.015059036, -0.0029137111, 0.012087211, 0.01396629, 0.00035726474, 0.021183535, -0.0039261705, 0.007463297, -0.0059671015, 0.009027141, 0.001515494, 0.009791594, 0.025301715, -0.0020030579, -0.011855244, -0.0056309025, -0.0016221714, -0.014019948, 0.007754016, 0.0026702487, 0.004952479, 0.0069704005, 0.02283138, -0.027231185, -0.021723904, -0.04572319, -0.0041934885, 0.0045362716, 0.023655348, 0.02829465, 0.03655443, -0.0010156669, -0.014241034, -0.014671451, -0.008166737, -0.016514895, 0.001080318, 0.0007477491, 0.03188089, 0.007040214, 0.00482313, -0.0048862323, -0.0139735555, 0.006549453, 0.0027787287, -0.01482514, -0.0018776424, -0.0044219936, -0.013757497, -0.0023069752, -0.002157202, 0.01545684, 0.003421216, -0.001601233, 0.020123221, -0.004009128, 0.005391545, 0.004926293, 0.011291547, 0.0048929593, 0.030663213, 0.00996257, 0.019691633, -0.01116638, -0.0017757413, -0.007831991, -0.007990303, 0.004559965, -0.014901263, 0.005348026, -0.011137799, 0.012046851, 0.0035614488, 0.016578263, 0.007640626, 0.013562952, -0.012324063, 0.011199467, -0.02029125, -0.0010998799, 0.0011749652, -0.0126963835, -0.008473297, 0.01172437, 0.0044020056, -0.022620838, 0.0072121536, 0.0026084823, 0.0071129696, -0.00004338029, -0.015106052, 0.026961109, -0.004731325, -0.00016964093, -0.0013609367, 0.012550197, -0.010761909, 0.011529716, -0.0143644465, -0.0022167363, 0.010533643, 0.002056986, -0.011846799, -0.012886462, 0.010072039, 0.0027285353, -0.013029302, 0.020101573, -0.00127795, 0.003637112, 0.0066948906, -0.01009099, -0.013229669, 0.023323558, -0.0072205234, 0.010971003, -0.0039848895, 0.009725801, 0.0023290273, 0.0058846064, 0.016696576, 0.0031669696, 0.011165213, -0.01063236, -0.03527322, 0.009940918, 0.022315891, -0.0306292, -0.0013388611, 0.008774716, 0.020954216, -0.007982701, 0.027197255, -0.004286825, -0.013924953, 0.03276462, 0.037393175, -0.013542004, -0.005740825, 0.00096889416, 0.007135639, 0.0024264106, 0.0031152992, -0.0071673486, 0.010195224, -0.0025254295, 0.022588992, 0.010220461, 0.0055998894, -0.009705344, -0.012061598, 0.021359187, 0.01312477, -0.0070495866, 0.0153283365, 0.015979411, 0.0040927357, -0.000016712165, 0.0009840799, -0.026535, 0.00985229, -0.019541116, 0.01163676, -0.017268477, 0.0107842935, -0.00063259737, 0.07334603, -0.0020069354, -0.03604826, -0.011309443, -0.0145838, 0.002294821, 0.018328696, 0.017975535, 0.010572068, 0.013035247, 0.022166342, -0.012854487, 0.015468779, -0.02023699, 0.011719686, -0.0048316624, -0.037636574, 0.027671752, 0.0012204975, -0.013280379, -0.023236867, -0.0003050773, -0.0075348294, 0.010749975, 0.01127478, 0.0073440517, 0.006748738, 0.008117867, -0.018292135, 0.013817835, -0.023554511, 0.003310583, -0.001986256, 0.008534083, -0.0010592768, -0.018961424, 0.0074962177, 0.006198013, -0.0028422582, 0.017240634, 0.019294137, -0.0018065725, -0.0039046921, -0.01257009, -0.02040695, 0.0071268235, -0.0019280805, 0.021698814, -0.0008624354, -0.01594301, -0.011184712, 0.005066289, 0.007092861, -0.0003827307, -0.01531904, 0.0028901289, 0.017066373, 0.017485544, -0.021906262, -0.023233399, 0.0032717506, 0.009747209, 0.01810977, -0.009362766, 0.0035573647, -0.0221538, -0.009844151, -0.0023958522, -0.017492156, 0.01564528, -0.010795568, 0.0018131576, 0.01232335, -0.026790816, 0.022938779, 0.005347769, -0.017423918, 0.015522507, -0.0031591526, 0.01722805, 0.008368901, 0.00010151707, 0.018494062, -0.0006160913, 0.009218537, 0.0201138, 0.013360199, -0.035454582, 0.0023603167, 0.015430464, -0.014843667, 0.018976657, -0.002604009, 0.008891481, 0.009063072, 0.0020228447, -0.021871775, 0.036265984, -0.009706295, 0.011002925, -0.00547197, 0.010707506, -0.0004876073, -0.01594082, -0.000022911958, -0.017805, -0.01441751, 0.00095628074, -0.004415541, -0.0019386462, -0.027144741, 0.019775877, 0.02958334, 0.015820554, -0.0075491904, -0.010694268, 0.0032205603, -0.010690967, -0.017469432, 0.0048528286, -0.02706542, -0.01749421, -0.006603588, 0.001878176, 0.0063836174, 0.013159158, -0.005697723, -0.03124096, 0.026628187, -0.010062705, 0.0016957155, -0.007838407, -0.0077790814, 0.022663275, -0.02390185, -0.008436406, 0.0064804545, 0.10611905, -0.0077527063, 0.017724503, 0.012427506, 0.009097644, 0.0075758705, 0.03268202, -0.0021811386, -0.0083658695, -0.017721929, -0.017338661, 0.023739576, -0.0028109904, -0.0010691516, -0.0012843971, 0.011491672, -0.015406668, 0.0030433482, -0.020833075, -0.0099152, -0.038682185, 0.0077724666, 0.0109910825, 0.020140043, -0.007350963, -0.007846183, -0.009244825, 0.021360504, -0.0027255795, -0.039297085, 0.009436179, -0.015533063, -0.0151016265, 0.003912489, -0.024816388, 0.0028180045, 0.012641134, 0.014214992, 0.029634563, 0.016124805, -0.0051570977, 0.00890023, -0.0044248556, -0.0015241181, -0.020485034, 0.011107616, 0.01468987, -0.024133066, 0.0075411783, 0.00026687814, 0.015341315, 0.01595918, -0.017945036, -0.02338567, -0.0125915725, -0.01500446, -0.002394929, -0.011724062, -0.009210067, 0.0034924252, -0.0165733, 0.01916441, 0.01038347, -0.01738797, 0.006460014, -0.004981992, 0.021746421, 0.012133515, -0.0056405743, -0.0006619719, 0.0002761425, -0.002923485, -0.0061589647, -0.0035110593, -0.0074085016, 0.0070596696, -0.0047331257, 0.007727989, -0.0052510835, 0.010915316, 0.040438008, 0.044723395, 0.0058162394, 0.0011982219, -0.005024501, -0.012734406, -0.0004304697, -0.0097652, -0.010899124, -0.008033286, 0.0077808215, 0.004717086, -0.011987105, -0.018253887, -0.019864997, 0.001759239, -0.014362182, 0.010708685, 0.002900913, -0.0031776938, -0.00659949, -0.0004169219, -0.0031448682, -0.015096355, -0.005502038, 0.01393005, 0.0044434546, 0.015553432, 0.0052833245, 0.011262697, 0.0077717677, -0.008452052, -0.016280381, 0.007147326, 0.0044539385, -0.009511872, 0.0054129125, 0.011740167, -0.0048945127, -0.014464462, 0.010437229, -0.011325924, -0.017277878, -0.010080626, -0.011209857, -0.0013180416, -0.012779969, 0.0060970252, 0.011460033, 0.0049986816, 0.0019168336, -0.021743843, 0.018424643, -0.009697557, -0.015092939, 0.0044582025, 0.014080819, 0.0182812, 0.0022328843, -0.0023004627, 0.0083790785, 0.0067587285, -0.021778941, 0.024661392, 0.0060920203, 0.0008874371, -0.0006010086, -0.008201943, -0.0050798906, 0.006079982, 0.01090097, -0.0034255802, -0.022290101, 0.013451533, 0.005550098, -0.018370587, -0.0044044256, -0.028140167, 0.0017757538, 0.0021287876, -0.02354302, 0.017034642, 0.016910762, 0.010322473, 0.009384834, -0.00014991705, 0.024087654, 0.009303172, 0.0005519749, -0.011629786, -0.012731245, -0.0031126984, 0.014114698, 0.01886201, -0.0018497409, 0.014516611, -0.015473269, 0.005657458, -0.0046808324, 0.004826496, -0.0075121396, 0.013905466, 0.00015694367, 0.028881356, -0.005554762, 0.0047113984, 0.011621437, 0.01779111, 0.0036049047, 0.020252014, -0.012742673, 0.03748861, -0.0053512207, -0.0030791687, 0.005462445, -0.0033598256, 0.014678695, -0.01759782, -0.004804606, 0.0044751526, -0.0034382357, -0.025137248, -0.00792575, 0.003217152, -0.0037599492, 0.00848207, -0.0065253037, -0.0126460865, 0.019016296, 0.015254462, -0.012670911, 0.007662863, 0.010744539, -0.018721793, -0.021770464, 0.00037251602, -0.020389933, -0.011504889, -0.0020738349, -0.0048399065, -0.020066217, 0.015617709, 0.0047239326, -0.004983019, 0.018050447, 0.019898638, 0.0033035984, 0.02441708, -0.013490812, -0.009922786, 0.0094616, -0.013114699, -0.012378024, -0.03917067, -0.00545265, -0.005397347, 0.027139708, 0.009184142, -0.007995561, -0.009042385, -0.0013114255, 0.0068789464, -0.022952009, 0.0056610797, -0.0214255, -0.008449231, 0.030196873, -0.0023451059, 0.000108787426, -0.01899859, -0.019890537, 0.01448925, -0.015701488, -0.02184137, -0.009083296, 0.0052289455, -0.02202672, -0.0036462953, 0.002675949, 0.008214396, 0.017111044, -0.013626907, -0.032555826, -0.027033148, -0.0005337378, -0.009219796, -0.0057128207, 0.010301546, 0.01778046, 0.009022572, 0.028908448, 0.0072566457, 0.013007072, 0.012615138, -0.004779236, -0.0057359543, -0.008736261, -0.0062118154, -0.022250578, -0.012420385, -0.016339092, 0.010665622, -0.004725337, -0.013766616, -0.007282082, -0.024739426, -0.016079683, -0.017129213, 0.008248289, -0.004916992, 0.0018981384, -0.009161351, -0.0066860896, 0.003004424, 0.0045850836, 0.022117427, -0.0018625021, 0.0058056614, 0.012458968, -0.0047471933, 0.0070688627, -0.022015385, 0.021751571, -0.004891943, 0.0074072424, -0.007969421, 0.004273361, 0.01179347, 0.016032418, -0.019012898, 0.001158331, -0.0051101567, 0.00025428546, 0.016761133, 0.01500311, -0.0020604352, 0.005106278, 0.0056170262, -0.0021087378, 0.0073723835, -0.0019463116, -0.024530664, 0.0034586652, 0.0023759801, -0.01803547, -0.011498524, 0.0119453315, -0.016071487, 0.0006025356, 0.025179572, 0.0067160004, -0.0024295393, 0.0072859186, -0.011680204, 0.008455967, 0.017706042, 0.0034910117, 0.013661264, 0.025072142, 0.011880184, 0.008220447, 0.023104109, -0.008931915, -0.064368315, -0.004162737, -0.012652049, 0.020270485, 0.0057319636, -0.02161057, -0.03064696, 0.003738986, -0.0118044615, -0.014202685, 0.006912093, 0.01844448, -0.005126195, -0.003957347, 0.010540071, 0.0069289496, -0.0056713764, 0.007684269, 0.009919971, 0.035077363, -0.0013063034, 0.006972733, 0.0032858616, 0.004901437, -0.023873016, 0.00978862, -0.0164036, -0.008107606, -0.011460503, -0.0035751776, -0.00022835843, -0.006350656, -0.026671685, -0.010413796, 0.01326509, -0.0005887443, 0.0042119967, -0.00021390604, -0.009187482, 0.0117821125, 0.007870294, 0.017663604, -0.004570224, -0.00022121449, 0.011252904, 0.0057568783, 0.017680615, -0.007544906, -0.022758015, 0.050289672, 0.014416442, -0.017911533, -0.007882782, -0.011008266, -0.010645289, 0.0013193949, -0.00895675, -0.002861101, 0.03629223, -0.0025015115, -0.010608733, -0.0030545718, 0.0056996206, 0.0045136865, 0.005265383, 0.01482631, 0.0074912696, -0.013543807, 0.0045224517, 0.0123642655, -0.00028296714, -0.013549521, 0.012673471, -0.005305346, 0.013044749, 0.0077633383, 0.014900919, 0.014600112, -0.025371466, 0.01865266, 0.0061685108, 0.014514, 0.01714667, -0.015945673, 0.0026128038, 0.009027824, 0.009846487, 0.0028298292, -0.0053756433, 0.005385342, -0.011324017, -0.0142175015, 0.017619194, 0.02218266, 0.011900064, 0.00037475541, -0.0016780788, -0.007919553, -0.0035294648, 0.0017314643, -0.01146334, -0.013950093, 0.019930977, 0.007910558, 0.007150172, 0.012391246, 0.002727367, 0.005271429, -0.02465544, -0.00049891305, 0.009850742, -0.015689434, 0.013197522, 0.007719639, -0.018830307, 0.020790538, 0.018603548, -0.020019695, -0.020931039, 0.010003248, 0.020659951, -0.0032823388, -0.017669791, -0.0056976797, 0.005814541, 0.008218662, -0.03853375, 0.0029150709, -0.0036003888, -0.009123511, 0.01984395, -0.010228067, 0.00017822205, -0.020304719, 0.0066894074, 0.0057301433, 0.005621578, 0.02280207, 0.008117289, -0.012987255, -0.0018959884, 0.015838262, 0.020001655, -0.0032249044, 0.0028712873, 0.00818683, 0.021363255, -0.010106784, -0.012671855, 0.008818268, 0.016380245, 0.011082081, 0.0037377265, -0.0076371427, 0.0076560816, 0.008057706, 0.024402894, -0.007085542, 0.0003560514, 0.0020035284, 0.018365143, 0.010637304, 0.048853006, 0.012249712, 0.0077725565, 0.0036015569, -0.0069529796, 0.0068199583, 0.018058911, -0.0031154223, -0.025498824, 0.020764451, 0.024144331, -0.011205911, 0.0012220776, 0.017347896, -0.007026514, 0.00026535545, 0.019880958, 0.01660535, -0.00829825, 0.019891405, 0.0384007, 0.00821104, -0.011619832, -0.022783367, 0.011448025, -0.036014587, -0.019816946, -0.008233664, 0.006689852, -0.0142295165, 0.021316286, -0.0058766245, 0.029719807, 0.0153446095, 0.0108705405, 0.01317542, 0.006632508, 0.00754862, -0.00070548465, -0.003134374, 0.013150419, -0.0266428, 0.009658666, 0.024564715, 0.0024896993, -0.016050413, 0.0000026727819, 0.0020631088, 0.01756105, 0.0053894394, 0.007065431, -0.000026946602, 0.009898304, 0.017010016, 0.025790026, 0.017898085, 0.013571897, -0.0020822126, 0.0030890405, 0.0035170189, -0.001971574, -0.009422667, -0.02214519, -0.004752081, 0.022930501, -0.0026855173, -0.038103763, 0.0030295332, 0.001167985, -0.009668011, 0.00075878995, -0.0002677734, 0.0027918546, 0.018284017, 0.002617314, 0.0006924831, -0.010207009, 0.01893066, -0.00428276, 0.025194542, -0.0003616405, -0.022645479, -0.00033633746, 0.019412171, -0.0011012054, 0.0038742004, -0.027450973, -0.017095905, 0.0015369802, -0.012201405, -0.01842119, 0.014584018, 0.011475755, -0.0038739962, 0.01659908, 0.023431707, 0.0053575216, 0.0007740477, -0.01368162, 0.001634048, -0.023239223, 0.018940149, 0.004334565, -0.004217979, -0.0051350477, 0.013858495, -0.010788617, 0.0014609122, 0.025323624, -0.0010034288, -0.028502824, 0.004439289, -0.009635875, -0.0034535835, 0.014676735, -0.020076634, 0.011777849, -0.009225238, -0.016933978, -0.023603193, 0.017632682, 0.012574178, -0.00022519496, 0.0058588516, 0.021562945, -0.017687682, -0.0029321942, -0.015730727, 0.011542474, -0.008246788, -0.0012518839, 0.0042686146, 0.013346678, 0.0013657764, 0.0056665135, -0.009030211, -0.020195182, -0.004131468, -0.0075519737, 0.001997133, 0.017070958, 0.006722799, -0.0067907833, 0.013187893, -0.016125077, 0.007078279, -0.010220971, -0.012282097, -0.0074084634, -0.0010866659, -0.005973466, -0.00807842, -0.013525389, -0.03484108, -0.00059534144, -0.010575386, 0.006143376, -0.004563823, 0.006874515, 0.016315622, 0.00014187265, -0.055702724, -0.002528894, 0.012080296, 0.009654394, -0.015519601, -0.0029610456, 0.011121728, 0.036817815, 0.005490757, -0.0051616416, -0.001723851, 0.008198211, 0.0048865103, -0.01252745, 0.0026813531, 0.014091702, 0.0061522517, -0.014509537, -0.028927723, 0.018685574, -0.0063133626, -0.020547772, -0.009668411, -0.020387718, -0.0010322164, 0.007709885, -0.027739614, 0.021138806, 0.09021371, -0.021573743, -0.008205581, 0.022538226, -0.014070857, -0.017472966, 0.007919995, -0.0053754603, -0.020396577, -0.013417019, -0.0210605, 0.02227266, -0.0072088754, 0.031150116, -0.0024174335, -0.010144871, 0.00020741284, -0.012767135, -0.0034332115, -0.029433064, 0.009388461, 0.0081737405, -0.019091068, -0.0027046504, -0.012265859, -0.002407497, -0.020142283, 0.0020599347, -0.00023341119, 0.0039432202, 0.012739564, -0.018075867, 0.002935231, -0.0026971702, -0.007851608, -0.011768637, 0.0011810295, -0.018130237, 0.0020985603, 0.0077499906, -0.0019364596, -0.02071069, -0.0033403814, 0.029521493, -0.005098997, 0.0017021834, 0.026530035, 0.012560966, 0.017191585, 0.012235439, -0.011479821, 0.007946486, -0.0129589485, 0.009123853, 0.012630963, -0.012995985, 0.003245004, 0.018863922, 0.009050958, 0.006418798, 0.0051283604, -0.02344107, 0.00029205112, -0.008910709, -0.01315143, -0.033314288, -0.025514325, 0.0053102826, -0.0011685428, 0.01753772, -0.0005564385, -0.0056158286, -0.016019825, 0.009951151, -0.0035512543, 0.040469248, -0.015770601, 0.005107453, 0.012164836, -0.0053790305, -0.00624699, -0.0012687237, -0.0107805105, 0.022975864, 0.015768254, 0.012866355, 0.02032297, -0.015169993, -0.011575477, 0.029958818, 0.028330427, -0.010924099, 0.0067216773, 0.0048434697, -0.024447571, 0.006056237, 0.0035252627, -0.013986603, 0.011515385, -0.0016409986, 0.0006364784, -0.010674259, 0.016067395, 0.013023001, -0.0013371658, 0.007121886, -0.02255033, 0.015625827, 0.009962301, -0.012905714, 0.011368728, 0.007643068, -0.011338426, 0.013852936, -0.018568253, 0.0049055605, 0.026228977, -0.0023447035, -0.006714587, -0.016144894, -0.0019890561, 0.0032946412, 0.012506435, 0.009338678, 0.0007035854, 0.0030171906, 0.0038554845, 0.0073476, -0.0010335572, -0.011455428, -0.017567117, 0.0034155839, -0.014493224, -0.0010970281, -0.0106554665, -0.020564858, 0.0012306531, -0.003586892, -0.0055414685, 0.008162147, -0.010393583, 0.015088586, 0.0051059513, 0.010784234, -0.018104892, -0.0034425883, 0.020757405, 0.015699359, 0.0072913403, -0.003331733, -0.004616871, -0.009860259, -0.0017010148, 0.027625496, -0.0076700826, -0.0012284719, -0.0090677235, -0.0053906473, -0.019374004, 0.001729646, 0.0043120785, 0.0010643125, 0.00007505411, -0.010694414, 0.006782102, -0.015163129, -0.014936983, 0.000018162584, -0.010479766, -0.014099497, 0.02222566, 0.014575347, -0.0077206, 0.012308191, -0.0040378934, -0.0065221135, 0.012030543, -0.038630843, 0.030219177, -0.0011685626, 0.00002068431, 0.012147984, 0.0079548, 0.0053340723, -0.013062709, 0.01075528, 0.00061436486, -0.023149766, -0.015245519, -0.020204108, -0.012903435, -0.0032113118, 0.005159881, -0.0062516225, 0.0030432558, 0.0050943387, -0.00043037554, 0.0055696503, 0.00011286595, 0.009957132, 0.0039406717, 0.021050716, 0.023005469, 0.021023855, 0.016165677, -0.0034745291, -0.012324377, 0.012965572, -0.00023093935, -0.0022648354, 0.025274808, 0.00464443, 0.011046647, -0.006195843, 0.0104604745, -0.0076457136, 0.0069875633, -0.012806887, -0.012558239, -0.004941497, 0.008998793, -0.013717342, 0.005436682, 0.0029796418, -0.0010200246, 0.012176731, -0.008944645, 0.020961996, 0.009391645, -0.01108604, 0.0040092133, 0.02310504, 0.015267389, -0.012284427, -0.0025707467, -0.0051195477, 0.013578714, 0.0021415546, 0.0063200598, 0.0010281327, 0.0064557013, -0.013529996, 0.03941559, -0.014070971, -0.039502185, 0.0006811096, 0.008317666, 0.006451608, -0.0148497615, 0.010532435, -0.0073040216, 0.008487607, 0.019933606, -0.0014214326, 0.016317094, -0.009874778, -0.022178747, 0.008255726, 0.02327217, 0.0043088677, -0.008791435, -0.006383657, 0.0217848, 0.023058953, 0.006140831, 0.0110299215, 0.002238277, 0.0059408215, 0.0035976716, 0.012655205, 0.0036484126, -0.009031884, -0.01741742, -0.011031898, 0.015317687, 0.014444156, 0.022210978, 0.011858593, 0.00644983, 0.00072248554, 0.005381485, -0.012693171, 0.004724313, -0.0040515694, -0.0024442445, 0.0018280396, 0.0027691568, -0.0033373414, -0.03213444, -0.009995496, -0.027485171, 0.01734007, 0.01754637, 0.011050243, -0.013399842, -0.023268463, -0.010391742, 0.00058623054, 0.0045776763, -0.015789773, -0.0010995603, -0.014765232, -0.001252488, -0.002669432, 0.0057704663, 0.017059982, -0.011354261, 0.0067132893, -0.0022121796, -0.0045807725, -0.020519689, -0.023039902, -0.0026676361, 0.022881877, -0.004775064, 0.020910423, -0.019067017, 0.010719239, -0.007416308, -0.0006951701, 0.0119451145, -0.011269811, 0.0040399767, -0.013828085, 0.012997035, 0.004154776, 0.018528963, -0.0022795305, 0.002702781, 0.020585705, 0.017944988, -0.023486905, 0.0010649445, 0.001180233, -0.010046614, 0.016286295, 0.021247212, 0.0010639817, 0.0062141456, -0.0031102425, 0.012844048, 0.022812586, 0.008295577, 0.012458638, -0.010910166, 0.0060495054, 0.00153477, 0.004839783, 0.0012053819, 0.004005008, -0.025305476, -0.013320033, -0.0038200857, 0.0096273655, 0.007993585, -0.0008399527, -0.013893859, -0.012975787, -0.01353037, -0.013300889, -0.006063473, 0.011157787, 0.01921292, 0.011406039, 0.024793865, -0.0011238485, -0.009590781, 0.009057154, 0.042145494, -0.010066612, -0.0038654874, -0.027596466, -0.0146818375, -0.0005396864, -0.029653879, 0.005991321, -0.001106665, 0.0002555022, 0.0154354125, 0.015117348, 0.007445764, 0.010522002, 0.0071222195, 0.007780003, 0.0002981476, -0.00026696874, 0.0050791563, -0.023432229, 0.012922205, -0.01680493, -0.003756843, 0.00012260575, -0.0054224967, -0.014643569, 0.006524031, -0.0168887, 0.036607057, -0.002010895, -0.009518067, 0.014780808, 0.005263956, -0.0083617475, 0.021671478, -0.0128390845, -0.013658004, 0.018676953, 0.00047554448, 0.0034875283, -0.008597821, -0.008286665, 0.002175376, 0.00642376, -0.012278223, -0.019244937, -0.008167989, 0.0019286746, 0.006528422, 0.0017960774, -0.0015467207, -0.017361578, -0.003989024, 0.00047002832, 0.0019420207, 0.008402278, -0.014844677, -0.005377721, -0.013912808, -0.012589379, 0.007989586, -0.0045666457, -0.0205128, -0.0108104395, 0.019336738, 0.0031117108, -0.020936541, 0.012268343, 0.0016061375, -0.0010362801, -0.018575959, 0.020544251, 0.021559538, 0.022377335, -0.03575508, 0.0037649095, -0.0018494055, -0.03950184, -0.016808936, 0.0035589258, -0.0026596265, -0.0011067962, -0.01745707, -0.029449083, 0.003191554, -0.017479122, -0.001571244, -0.01845527, -0.008484144, 0.00487516, 0.009585869, 0.0033335688, -0.005022078, 0.021782298, -0.000588426, 0.018686442, -0.01403198, 0.0012871937, -0.01963915, -0.01424364, 0.0009153381, 0.010483032, -0.008545147, -0.0102071995, -0.028394856, -0.00030010517, 0.0055745277, -0.023525363, -0.0057331906, 0.008880831, -0.02449616, 0.0013816156, 0.020801403, -0.015135891, 0.00969427, -0.01510726, 0.016748374, -0.002963117, -0.0061633643, 0.0048986524, 0.00225529, 0.01605577, 0.0026835992, -0.011249489, 0.017488359, -0.0006850368, 0.00602977, -0.00076086225, -0.0275611, -0.004241385, 0.016191894, 0.030753046, -0.0027014692, -0.006125574, 0.00027697437, -0.006518551, -0.0013909154, -0.020348588, 0.0073730783, -0.023568368, 0.023181178, 0.0042841383, -0.00883114, -0.003931259, 0.0003383847, -0.0023953004, 0.0037223252, 0.0060122656, -0.01434159, -0.019023594, -0.008602984, -0.0137641225, -0.017601287, -0.010524987, 0.013076243, 0.016508566, 0.010216022, -0.005118951, 0.0029810856, 0.024858445, 0.02076868, 0.002610561, 0.0187548, -0.0063384566, 0.030494979, -0.0037449575, -0.0011034772, -0.012032371, 0.026857626, -0.006151475, -0.00055482093, -0.008492867, 0.012666743, -0.019436352, -0.01591107, 0.016444648, 0.005950308, -0.0050755087, -0.0040428066, -0.007665494, 0.005198069, -0.018954355, 0.002115684, -0.0074276156, 0.005526521, -0.009084831, 0.008981895, 0.015150645, 0.0021013957, -0.0051521817, -0.0067104404, -0.0006847311, 0.01554317, -0.01843569, -0.013169111, -0.0069682933, 0.0053003216, 0.007412153, 0.011856619, -0.0056223, -0.004330948, 0.010437994, -0.009659974, 0.0014535933, -0.009132419, -0.0084664645, 0.004146513, 0.013476089, -0.01634424, 0.008948275, -0.019329337, -0.0061526806, 0.0212989, -0.0027316175, -0.03227406, 0.005623197, -0.0071151815, 0.0036756156, -0.0037758828, -0.0037794155, 0.0033261052, 0.0006954613, -0.027986072, 0.01694248, -0.011913192, -0.00091254496, -0.0051430687, 0.014658072, 0.025020232, -0.021223327, -0.0004411715, 0.009590534, 0.10936789, -0.01582612, 0.0034838596, -0.010047524, -0.018160904, -0.023680797, 0.019147232, -0.008880954, 0.01909015, -0.024435587, -0.0070388075, 0.010949389, -0.010473605, 0.01608264, 0.02960219, 0.013559736, 0.02300026, -0.00046082423, -0.010964388, -0.00019993524, -0.0053473115, -0.01231502, 0.003941124, 0.05289356, 0.0065378128, 0.014246121, 0.0117165465, 0.006532056, -0.003580975, -0.0008206685, -0.0008996485, -0.0156036755, 0.014603441, 0.007572972, -0.017972212, -0.007950074, 0.013951187, -0.09165055, -0.017644126, 0.010001305, -0.007820114, 0.008915158, -0.005327584, 0.005820164, 0.0016727903, 0.019680995, 0.02749548, 0.030145502, 0.004389741, 0.036647495, 0.013522523, 0.0056521753, -0.023440955, 0.011477976, 0.0013010919, 0.03299389, 0.0065621873, 0.023222607, -0.009754273, -0.0017090301, 0.0023429673, -0.004671784, 0.002661959, 0.016087491, -0.018684069, 0.01035119, 0.01909263, -0.0051863277, -0.010613412, -0.012902334, 0.015393063, -0.041429173, -0.000844364, -0.012937662, -0.023130277, 0.005087445, -0.027084373, -0.0033238162, 0.008156256, 0.020191543, 0.002088833, -0.004141232, 0.0030892577, 0.016890703, 0.011032125, 0.0048950613, -0.009073664, -0.01896739, -0.01973472, -0.024916036, 0.016680034, 0.024877349, 0.008187916, -0.014400959, -0.012381603, -0.0072113243, -0.002706691, -0.00042704868, 0.006368901, -0.007953872, 0.02713947, 0.014603452, -0.011556015, -0.005390107, 0.00006402326, 0.0011583876, -0.0012401236, 0.012809404, 0.0010810556, -0.015106697, 0.012997862, -0.0295846, 0.016358031, 0.016387269, -0.00007273495, 0.007708406, -0.0040929765, 0.015673425, -0.006147276, -0.019708589, 0.022659775, -0.026198843, -0.014958556, -0.011710152, -0.01730364, -0.0053626257, -0.008396802, -0.045932792, 0.015803207, 0.00973878, 0.031140806, -0.0020091424, -0.012785998, 0.009632889, -0.0030716343, -0.0023168828, 0.001410972, -0.018361965, -0.009759056, 0.0180582, 0.0013425611, 0.016300596, -0.020536883, 0.0013735575, -0.00765944, -0.0021060612, 0.0020086602, 0.015370625, -0.011320857, 0.0014333896, -0.032723736, 0.00936961, 0.0041483683, 0.0020958395, 0.0053391205, -0.0013821948, 0.0005950967, -0.006806304, 0.000036166017, 0.008192865, 0.0025133279, -0.002569265, 0.019130208, 0.008791273, 0.017063057, -0.009702946, 0.0036712799, 0.0038604483] diff --git a/test/distributed/cases/function/func_llm_embedding.sql b/test/distributed/cases/function/func_llm_embedding.sql new file mode 100644 index 0000000000000..0b1e4e2308344 --- /dev/null +++ b/test/distributed/cases/function/func_llm_embedding.sql @@ -0,0 +1,2 @@ +-- @skip:issue#18664 +SELECT llm_embedding("This is text... bla "); diff --git a/test/distributed/resources/llm_test/embedding.txt b/test/distributed/resources/llm_test/embedding.txt new file mode 100644 index 0000000000000..68a773568ed42 --- /dev/null +++ b/test/distributed/resources/llm_test/embedding.txt @@ -0,0 +1 @@ +This is text... bla \ No newline at end of file From b5b07d42f327c39bd4e3ead09e5687889483b7c6 Mon Sep 17 00:00:00 2001 From: charleschile Date: Mon, 9 Sep 2024 22:16:45 +0800 Subject: [PATCH 5/7] fix bug --- pkg/sql/plan/function/embedding_service.go | 14 ++++++++++++++ pkg/sql/plan/function/func_llm.go | 14 ++++++++++++++ pkg/sql/plan/function/ollama_service.go | 14 ++++++++++++++ 3 files changed, 42 insertions(+) diff --git a/pkg/sql/plan/function/embedding_service.go b/pkg/sql/plan/function/embedding_service.go index d8ee90efcc2e9..41bc35ae98dc9 100644 --- a/pkg/sql/plan/function/embedding_service.go +++ b/pkg/sql/plan/function/embedding_service.go @@ -1,3 +1,17 @@ +// Copyright 2024 Matrix Origin +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package function import ( diff --git a/pkg/sql/plan/function/func_llm.go b/pkg/sql/plan/function/func_llm.go index ae33b2aafb8e2..1e68bed3f5155 100644 --- a/pkg/sql/plan/function/func_llm.go +++ b/pkg/sql/plan/function/func_llm.go @@ -1,3 +1,17 @@ +// Copyright 2024 Matrix Origin +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package function import ( diff --git a/pkg/sql/plan/function/ollama_service.go b/pkg/sql/plan/function/ollama_service.go index 06cc3c10a2825..43785995417bb 100644 --- a/pkg/sql/plan/function/ollama_service.go +++ b/pkg/sql/plan/function/ollama_service.go @@ -1,3 +1,17 @@ +// Copyright 2024 Matrix Origin +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package function import ( From 0aa7fcbddc85805028c054929eff90f5a4821dd0 Mon Sep 17 00:00:00 2001 From: Charles Chi Le Date: Thu, 31 Oct 2024 22:23:22 +0800 Subject: [PATCH 6/7] LLM_EXTRACT_TEXT implementation (#18435) As part of our document LLM support, we are introducing the `LLM_EXTRACT_TEXT` function. This function extracts text from PDF files and writes the extracted text to a specified text file, extractor type can be specified by the third argument. --- go.mod | 1 + go.sum | 2 + pkg/sql/plan/function/func_llm.go | 178 ++++++++++++++++++ pkg/sql/plan/function/func_llm_test.go | 127 +++++++++++++ pkg/sql/plan/function/function_id.go | 3 + pkg/sql/plan/function/list_builtIn.go | 25 ++- .../function/func_llm_extract_file.result | 6 + .../cases/function/func_llm_extract_file.sql | 2 + .../llm_test/extract_text/MODocs1.pdf | Bin 0 -> 59217 bytes .../llm_test/extract_text/example.pdf | Bin 0 -> 316336 bytes 10 files changed, 342 insertions(+), 2 deletions(-) create mode 100644 pkg/sql/plan/function/func_llm.go create mode 100644 pkg/sql/plan/function/func_llm_test.go create mode 100644 test/distributed/cases/function/func_llm_extract_file.result create mode 100644 test/distributed/cases/function/func_llm_extract_file.sql create mode 100644 test/distributed/resources/llm_test/extract_text/MODocs1.pdf create mode 100644 test/distributed/resources/llm_test/extract_text/example.pdf diff --git a/go.mod b/go.mod index 28b0867131f0f..cb32d84c837bb 100644 --- a/go.mod +++ b/go.mod @@ -48,6 +48,7 @@ require ( github.com/itchyny/gojq v0.12.16 github.com/jhump/protoreflect v1.15.2 github.com/json-iterator/go v1.1.12 + github.com/ledongthuc/pdf v0.0.0-20240201131950-da5b75280b06 github.com/lni/dragonboat/v4 v4.0.0-20220815145555-6f622e8bcbef github.com/lni/goutils v1.3.1-0.20220604063047-388d67b4dbc4 github.com/lni/vfs v0.2.1-0.20220616104132-8852fd867376 diff --git a/go.sum b/go.sum index fb8747ec6539c..863775e7c08ca 100644 --- a/go.sum +++ b/go.sum @@ -484,6 +484,8 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/labstack/echo/v4 v4.1.11/go.mod h1:i541M3Fj6f76NZtHSj7TXnyM8n2gaodfvfxNnFqi74g= github.com/labstack/echo/v4 v4.5.0/go.mod h1:czIriw4a0C1dFun+ObrXp7ok03xON0N1awStJ6ArI7Y= github.com/labstack/gommon v0.3.0/go.mod h1:MULnywXg0yavhxWKc+lOruYdAhDwPK9wf0OL7NoOu+k= +github.com/ledongthuc/pdf v0.0.0-20240201131950-da5b75280b06 h1:kacRlPN7EN++tVpGUorNGPn/4DnB7/DfTY82AOn6ccU= +github.com/ledongthuc/pdf v0.0.0-20240201131950-da5b75280b06/go.mod h1:imJHygn/1yfhB7XSJJKlFZKl/J+dCPAknuiaGOshXAs= github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4= github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= diff --git a/pkg/sql/plan/function/func_llm.go b/pkg/sql/plan/function/func_llm.go new file mode 100644 index 0000000000000..12222e979c349 --- /dev/null +++ b/pkg/sql/plan/function/func_llm.go @@ -0,0 +1,178 @@ +package function + +import ( + "context" + "github.com/ledongthuc/pdf" + "github.com/matrixorigin/matrixone/pkg/common/moerr" + "github.com/matrixorigin/matrixone/pkg/common/util" + "github.com/matrixorigin/matrixone/pkg/container/types" + "github.com/matrixorigin/matrixone/pkg/container/vector" + "github.com/matrixorigin/matrixone/pkg/fileservice" + "github.com/matrixorigin/matrixone/pkg/vm/process" + "strings" +) + +// LLMExtractText function +func LLMExtractText(parameters []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, selectList *FunctionSelectList) error { + input := vector.GenerateFunctionStrParameter(parameters[0]) + output := vector.GenerateFunctionStrParameter(parameters[1]) + extractorType := vector.GenerateFunctionStrParameter(parameters[2]) + rs := vector.MustFunctionResult[bool](result) + + rowCount := uint64(length) + + for i := uint64(0); i < rowCount; i++ { + inputBytes, nullInput := input.GetStrValue(i) + if nullInput { + if err := rs.AppendMustNullForBytesResult(); err != nil { + return err + } + continue + } + + outputBytes, nullInput2 := output.GetStrValue(i) + if nullInput2 { + if err := rs.AppendMustNullForBytesResult(); err != nil { + return err + } + continue + } + + extractorTypeBytes, nullInput3 := extractorType.GetStrValue(i) + if nullInput3 { + if err := rs.AppendMustNullForBytesResult(); err != nil { + return err + } + continue + } + + inputPath := util.UnsafeBytesToString(inputBytes) + outputPath := util.UnsafeBytesToString(outputBytes) + extractorTypeString := util.UnsafeBytesToString(extractorTypeBytes) + + moUrl, _, ext, err := types.ParseDatalink(inputPath) + if err != nil { + return err + } + if "."+extractorTypeString != ext { + return moerr.NewInvalidInputNoCtxf("File type and extractor type are not equal.") + } + if ext != ".pdf" { + return moerr.NewInvalidInputNoCtxf("Only pdf file supported.") + } + + outputPathUrl, _, _, err := types.ParseDatalink(outputPath) + if err != nil { + return err + } + + success, err := extractTextFromPdfAndWriteToFile(moUrl, outputPathUrl, proc) + if err != nil { + return err + } + + // return whether the process completes successfully + if success { + if err := rs.Append(true, false); err != nil { + return err + } + } else { + if err := rs.Append(false, false); err != nil { + return err + } + } + + } + + return nil +} + +func extractTextFromPdfAndWriteToFile(pdfPath string, txtPath string, proc *process.Process) (bool, error) { + // read PDF to string + content, err := readPdfToString(pdfPath) + if err != nil { + return false, moerr.NewInvalidInputNoCtxf("Invalid PDF input.") + } + + // file service and write file + ctx := context.TODO() + fs, readPath, err := fileservice.GetForETL(ctx, proc.Base.FileService, txtPath) + + // delete the file if txt file exist because Write() only works when a file does not exist + _, err = fs.StatFile(ctx, readPath) + if err == nil { + err1 := fs.Delete(ctx, readPath) + if err1 != nil { + return false, moerr.NewInvalidInputNoCtxf("Cannot remove file %s", readPath) + } + } + + _, err = fileservice.DoWithRetry( + "BackupWrite", + func() (int, error) { + return 0, fs.Write(ctx, fileservice.IOVector{ + FilePath: readPath, + Entries: []fileservice.IOEntry{ + { + Offset: 0, + Size: int64(len(content)), + Data: []byte(content), + }, + }, + }) + }, + 64, + fileservice.IsRetryableError, + ) + if err != nil { + return false, err + } + return true, nil +} + +func isSameSentence(current, last pdf.Text) bool { + return strings.TrimSpace(current.S) != "" && + last.Font == current.Font && + last.FontSize == current.FontSize && + last.X == current.X && + last.Y == current.Y +} + +func readPdfToString(path string) (string, error) { + f, r, err := pdf.Open(path) + if err != nil { + return "", err + } + defer func() { + if f != nil { + f.Close() + } + }() + + var textBuilder strings.Builder + totalPage := r.NumPage() + + for pageIndex := 1; pageIndex <= totalPage; pageIndex++ { + p := r.Page(pageIndex) + if p.V.IsNull() { + continue + } + var lastTextStyle pdf.Text + texts := p.Content().Text + for _, text := range texts { + if isSameSentence(text, lastTextStyle) { + lastTextStyle.S += text.S + } else { + if lastTextStyle.S != "" { + textBuilder.WriteString(lastTextStyle.S) + } + lastTextStyle = text + } + } + if lastTextStyle.S != "" { + textBuilder.WriteString(lastTextStyle.S + " ") + } + } + + return textBuilder.String(), nil +} diff --git a/pkg/sql/plan/function/func_llm_test.go b/pkg/sql/plan/function/func_llm_test.go new file mode 100644 index 0000000000000..6cfd94a0dd3e8 --- /dev/null +++ b/pkg/sql/plan/function/func_llm_test.go @@ -0,0 +1,127 @@ +package function + +import ( + "fmt" + "github.com/matrixorigin/matrixone/pkg/container/types" + "github.com/matrixorigin/matrixone/pkg/testutil" + "github.com/stretchr/testify/require" + "os" + "testing" +) + +func TestLLMExtractText(t *testing.T) { + testCases := initLLMExtractTextCase() + wrongTestCases := initLLMExtractWrongTextCase() + + proc := testutil.NewProcess() + for _, tc := range testCases { + fcTC := NewFunctionTestCase(proc, tc.inputs, tc.expect, LLMExtractText) + s, info := fcTC.Run() + require.True(t, s, fmt.Sprintf("case is '%s', err info is '%s'", tc.info, info)) + } + + for _, tc := range wrongTestCases { + fcTC := NewFunctionTestCase(proc, tc.inputs, tc.expect, LLMExtractText) + s, info := fcTC.Run() + require.True(t, s, fmt.Sprintf("case is '%s', err info is '%s'", tc.info, info)) + } + +} + +func initLLMExtractTextCase() []tcTemp { + regularCases := []struct { + info string + input []string + output []string + extractorType []string + wants []bool + }{ + { + info: "test encode - simple text", + input: []string{ + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/MODocs1.pdf?offset=0&size=4", GetFilePath()), + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/example.pdf?offset=0&size=4", GetFilePath()), + }, + output: []string{ + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/MODocs1.txt", GetFilePath()), + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/example.txt", GetFilePath()), + }, + extractorType: []string{ + "pdf", + "pdf", + }, + wants: []bool{ + true, + true, + }, + }, + } + + var testInputs = make([]tcTemp, 0, len(regularCases)) + for _, c := range regularCases { + testInputs = append(testInputs, tcTemp{ + info: c.info, + inputs: []FunctionTestInput{ + NewFunctionTestInput(types.T_datalink.ToType(), c.input, []bool{}), + NewFunctionTestInput(types.T_datalink.ToType(), c.output, []bool{}), + NewFunctionTestInput(types.T_varchar.ToType(), c.extractorType, []bool{}), + }, + expect: NewFunctionTestResult(types.T_bool.ToType(), false, c.wants, []bool{}), + }) + } + + return testInputs +} + +func initLLMExtractWrongTextCase() []tcTemp { + regularCases := []struct { + info string + input []string + output []string + extractorType []string + wants []bool + }{ + { + info: "test encode - simple text", + input: []string{ + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/MODocs1.txt?offset=0&size=4", GetFilePath()), + "", + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/example.pdf?offset=0&size=4", GetFilePath()), + }, + output: []string{ + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/MODocs1.txt", GetFilePath()), + "", + fmt.Sprintf("file://%s/../../../../test/distributed/resources/llm_test/extract_text/example.txt", GetFilePath()), + }, + extractorType: []string{ + "pdf", + "", + "txt", + }, + wants: []bool{ + true, + true, + }, + }, + } + + var testInputs = make([]tcTemp, 0, len(regularCases)) + for _, c := range regularCases { + testInputs = append(testInputs, tcTemp{ + info: c.info, + inputs: []FunctionTestInput{ + NewFunctionTestInput(types.T_datalink.ToType(), c.input, []bool{}), + NewFunctionTestInput(types.T_datalink.ToType(), c.output, []bool{}), + NewFunctionTestInput(types.T_varchar.ToType(), c.extractorType, []bool{}), + }, + expect: NewFunctionTestResult(types.T_bool.ToType(), true, c.wants, []bool{}), + }) + } + + return testInputs +} + +func GetFilePath() string { + dir, _ := os.Getwd() + return dir +} diff --git a/pkg/sql/plan/function/function_id.go b/pkg/sql/plan/function/function_id.go index 0c695333d1f05..0e95bc3528fd2 100644 --- a/pkg/sql/plan/function/function_id.go +++ b/pkg/sql/plan/function/function_id.go @@ -392,6 +392,7 @@ const ( BITMAP_COUNT BITMAP_CONSTRUCT_AGG BITMAP_OR_AGG + LLM_EXTRACT_TEXT // fulltext function FULLTEXT_MATCH @@ -723,4 +724,6 @@ var functionIdRegister = map[string]int32{ // match function "fulltext_match": FULLTEXT_MATCH, "fulltext_match_score": FULLTEXT_MATCH_SCORE, + "llm_extract_text": LLM_EXTRACT_TEXT, + } diff --git a/pkg/sql/plan/function/list_builtIn.go b/pkg/sql/plan/function/list_builtIn.go index d084271e4b5aa..442ec96b24763 100644 --- a/pkg/sql/plan/function/list_builtIn.go +++ b/pkg/sql/plan/function/list_builtIn.go @@ -6697,8 +6697,8 @@ var supportedOthersBuiltIns = []FuncNew{ }, }, }, - - // function 'grouping' + + // function 'grouping' { functionId: GROUPING, class: plan.Function_STRICT, @@ -6741,6 +6741,27 @@ var supportedOthersBuiltIns = []FuncNew{ Overloads: fulltext_expand_overload(types.T_float32), }, + + // function `LLM_EXTRACT_TEXT` + { + functionId: LLM_EXTRACT_TEXT, + class: plan.Function_STRICT, + layout: STANDARD_FUNCTION, + checkFn: fixedTypeMatch, + + Overloads: []overload{ + { + overloadId: 0, + args: []types.T{types.T_datalink, types.T_datalink, types.T_varchar}, + retType: func(parameters []types.Type) types.Type { + return types.T_bool.ToType() + }, + newOp: func() executeLogicOfOverload { + return LLMExtractText + }, + }, + }, + }, } // fulltext_match supports varchar, char and text. Expand the function signature to all possible combination of input types diff --git a/test/distributed/cases/function/func_llm_extract_file.result b/test/distributed/cases/function/func_llm_extract_file.result new file mode 100644 index 0000000000000..945ca54a685c5 --- /dev/null +++ b/test/distributed/cases/function/func_llm_extract_file.result @@ -0,0 +1,6 @@ +select llm_extract_text(cast('file://$resources/llm_test/extract_text/MODocs1.pdf?offset=0&size=4' as datalink), cast('file://$resources/llm_test/extract_text/MODocs1.txt' as datalink), "pdf"); +llm_extract_text(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/extract_text/MODocs1.pdf?offset=0&size=4 as datalink), cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/extract_text/MODocs1.txt as datalink), pdf) +true +select llm_extract_text(cast('file://$resources/llm_test/extract_text/example.pdf?offset=0&size=4' as datalink), cast('file://$resources/llm_test/extract_text/example.txt' as datalink), "pdf"); +llm_extract_text(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/extract_text/example.pdf?offset=0&size=4 as datalink), cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/extract_text/example.txt as datalink), pdf) +true \ No newline at end of file diff --git a/test/distributed/cases/function/func_llm_extract_file.sql b/test/distributed/cases/function/func_llm_extract_file.sql new file mode 100644 index 0000000000000..f67ca9eb07d78 --- /dev/null +++ b/test/distributed/cases/function/func_llm_extract_file.sql @@ -0,0 +1,2 @@ +select llm_extract_text(cast('file://$resources/llm_test/extract_text/MODocs1.pdf?offset=0&size=4' as datalink), cast('file://$resources/llm_test/extract_text/MODocs1.txt' as datalink), "pdf"); +select llm_extract_text(cast('file://$resources/llm_test/extract_text/example.pdf?offset=0&size=4' as datalink), cast('file://$resources/llm_test/extract_text/example.txt' as datalink), "pdf"); \ No newline at end of file diff --git a/test/distributed/resources/llm_test/extract_text/MODocs1.pdf b/test/distributed/resources/llm_test/extract_text/MODocs1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..229ad0bbc41055bf2b0da356b25d3263033a3e0e GIT binary patch literal 59217 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 N0!K9^cl$0*Z?ZpH9Tw%E{Q_&)rJj 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�MGIhln11lyO6F?WQkvA21l|K~_L-uF# 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 literal 0 HcmV?d00001 From 77e72944027ffe97d03adb70bab230b8d030286d Mon Sep 17 00:00:00 2001 From: Charles Chi Le Date: Thu, 31 Oct 2024 22:51:01 +0800 Subject: [PATCH 7/7] LLM_CHUNK implementation (#18471) --- pkg/sql/plan/function/func_llm.go | 179 +++++++++++++++++- pkg/sql/plan/function/func_llm_test.go | 112 ++++++++++- pkg/sql/plan/function/function_id.go | 4 +- pkg/sql/plan/function/list_builtIn.go | 24 ++- .../cases/function/func_llm_chunk.result | 30 +++ .../cases/function/func_llm_chunk.sql | 24 +++ .../resources/llm_test/chunk/1.txt | 1 + .../resources/llm_test/chunk/2.txt | 1 + .../resources/llm_test/chunk/3.txt | 3 + .../resources/llm_test/chunk/4.txt | 3 + 10 files changed, 375 insertions(+), 6 deletions(-) create mode 100644 test/distributed/cases/function/func_llm_chunk.result create mode 100644 test/distributed/cases/function/func_llm_chunk.sql create mode 100644 test/distributed/resources/llm_test/chunk/1.txt create mode 100644 test/distributed/resources/llm_test/chunk/2.txt create mode 100644 test/distributed/resources/llm_test/chunk/3.txt create mode 100644 test/distributed/resources/llm_test/chunk/4.txt diff --git a/pkg/sql/plan/function/func_llm.go b/pkg/sql/plan/function/func_llm.go index 12222e979c349..68ffd2cdf0fc8 100644 --- a/pkg/sql/plan/function/func_llm.go +++ b/pkg/sql/plan/function/func_llm.go @@ -1,7 +1,30 @@ +// Copyright 2024 Matrix Origin +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package function import ( - "context" + "fmt" + "github.com/matrixorigin/matrixone/pkg/common/moerr" + "github.com/matrixorigin/matrixone/pkg/common/util" + "github.com/matrixorigin/matrixone/pkg/container/types" + "github.com/matrixorigin/matrixone/pkg/container/vector" + "github.com/matrixorigin/matrixone/pkg/vm/process" + "io" + "strconv" + "strings" + "context" "github.com/ledongthuc/pdf" "github.com/matrixorigin/matrixone/pkg/common/moerr" "github.com/matrixorigin/matrixone/pkg/common/util" @@ -12,6 +35,158 @@ import ( "strings" ) +// LLM_CHUNK +// Fixed width chunking +type Chunk struct { + Start int + Length int + Text string +} + +func fixedWidthChunk(text string, width int) []Chunk { + var chunks []Chunk + runes := []rune(text) + for i := 0; i < len(runes); i += width { + end := i + width + if end > len(runes) { + end = len(runes) + } + chunks = append(chunks, Chunk{Start: i, Length: end - i, Text: string(runes[i:end])}) + } + return chunks +} + +// Sentence-based chunking +func sentenceChunk(text string) []Chunk { + var chunks []Chunk + var start int + for i, r := range text { + if r == '.' || r == '!' || r == '?' { + chunk := text[start : i+1] + chunks = append(chunks, Chunk{Start: start, Length: len(chunk), Text: chunk}) + start = i + 1 + } + } + if start < len(text) { + chunk := text[start:] + chunks = append(chunks, Chunk{Start: start, Length: len(chunk), Text: chunk}) + } + return chunks +} + +// document-based chunking +func documentChunk(text string) []Chunk { + var chunks []Chunk + var start = 0 + chunks = append(chunks, Chunk{Start: start, Length: len(text), Text: text}) + return chunks +} + +// Paragraph-based chunking +func paragraphChunk(text string) []Chunk { + var chunks []Chunk + paragraphs := strings.Split(text, "\n") + var start int + for _, paragraph := range paragraphs { + chunk := paragraph + "\n" + chunks = append(chunks, Chunk{Start: start, Length: len(chunk), Text: chunk}) + start += len(chunk) + } + return chunks +} + +func ChunkString(text, mode string) (string, error) { + modeParts := strings.Split(mode, ";") + for i := range modeParts { + modeParts[i] = strings.TrimSpace(modeParts[i]) + } + var chunks []Chunk + if len(modeParts) == 2 && modeParts[0] == "fixed_width" { + width, err := strconv.Atoi(modeParts[1]) + if width < 0 || err != nil { + return "", moerr.NewInvalidInputNoCtxf("'%s' is not a valid chunk strategy", mode) + } + chunks = fixedWidthChunk(text, width) + } else { + switch modeParts[0] { + case "sentence": + chunks = sentenceChunk(text) + case "paragraph": + chunks = paragraphChunk(text) + case "document": + chunks = documentChunk(text) + default: + return "", moerr.NewInvalidInputNoCtxf("'%s' is not a valid chunk strategy", mode) + } + } + + var chunkStrings []string + for _, chunk := range chunks { + chunkStrings = append(chunkStrings, fmt.Sprintf("[%d, %d, %q]", chunk.Start, chunk.Length, chunk.Text)) + } + + return "[" + strings.Join(chunkStrings, ", ") + "]", nil +} + +func LLMChunk(parameters []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, selectList *FunctionSelectList) error { + source := vector.GenerateFunctionStrParameter(parameters[0]) + chunkTypeParam := vector.GenerateFunctionStrParameter(parameters[1]) + rs := vector.MustFunctionResult[types.Varlena](result) + + rowCount := uint64(length) + for i := uint64(0); i < rowCount; i++ { + inputBytes, nullInput := source.GetStrValue(i) + chunkTypeBytes, nullChunkType := chunkTypeParam.GetStrValue(i) + + if nullInput || nullChunkType { + if err := rs.AppendMustNullForBytesResult(); err != nil { + return err + } + continue + } + + inputPath := util.UnsafeBytesToString(inputBytes) + moUrl, _, _, err := types.ParseDatalink(inputPath) + if err != nil { + return err + } + + var input string + + fs := proc.GetFileService() + r, err := ReadFromFile(moUrl, fs) + if err != nil { + return err + } + defer r.Close() +Contributor +@cpegeric cpegeric on Sep 20 +defer r.Close() is buggy inside the for loop. variable r only close when end of the function but not each block. use func() { defer r.Close() } to make sure r is closed at the end of func() {}... You may run out of file descriptors when rowCount is large. (see sql/plan/function/func_unary.go:WriteFileDatalink() for details) + +@charleschile Reply... + ctx, err := io.ReadAll(r) + if err != nil { + return err + } + + input = string(ctx) + if len(input) == 0 { + return moerr.NewInvalidInputNoCtxf("Empty file is not valid") + } + + chunkType := string(chunkTypeBytes) + resultStr, err := ChunkString(input, chunkType) + if err != nil { + return err + } + if err := rs.AppendMustBytesValue([]byte(resultStr)); err != nil { + return err + } + } + + return nil +} + // LLMExtractText function func LLMExtractText(parameters []*vector.Vector, result vector.FunctionResultWrapper, proc *process.Process, length int, selectList *FunctionSelectList) error { input := vector.GenerateFunctionStrParameter(parameters[0]) @@ -175,4 +350,4 @@ func readPdfToString(path string) (string, error) { } return textBuilder.String(), nil -} +} \ No newline at end of file diff --git a/pkg/sql/plan/function/func_llm_test.go b/pkg/sql/plan/function/func_llm_test.go index 6cfd94a0dd3e8..e9862ec658e1e 100644 --- a/pkg/sql/plan/function/func_llm_test.go +++ b/pkg/sql/plan/function/func_llm_test.go @@ -1,7 +1,23 @@ +// Copyright 2024 Matrix Origin +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package function import ( "fmt" + "testing" + "fmt" "github.com/matrixorigin/matrixone/pkg/container/types" "github.com/matrixorigin/matrixone/pkg/testutil" "github.com/stretchr/testify/require" @@ -9,6 +25,100 @@ import ( "testing" ) +func TestChunkString(t *testing.T) { + type testCase struct { + testName string + text string + mode string + wantReturn string + wantErr string + } + tests := []testCase{ + { + testName: "correct chunk with fixed width", + text: "12345678901234567890", + mode: "fixed_width; 2", + wantReturn: "[[0, 2, \"12\"], [2, 2, \"34\"], [4, 2, \"56\"], [6, 2, \"78\"], [8, 2, \"90\"], [10, 2, \"12\"], [12, 2, \"34\"], [14, 2, \"56\"], [16, 2, \"78\"], [18, 2, \"90\"]]", + wantErr: "", + }, + { + testName: "correct chunk with fixed width", + text: "1234567890", + mode: "fixed_width; 21", + wantReturn: "[[0, 10, \"1234567890\"]]", + wantErr: "", + }, + { + testName: "chinese character", + text: "mo数据库", + mode: "fixed_width; 2", + wantReturn: "[[0, 2, \"mo\"], [2, 2, \"数据\"], [4, 1, \"库\"]]", + wantErr: "", + }, + { + testName: "correct chunk with paragraph", + text: "12345\n" + + "678901234\n" + + "567890", + + mode: "paragraph", + wantReturn: "[[0, 6, \"12345\\n\"], [6, 10, \"678901234\\n\"], [16, 7, \"567890\\n\"]]", + wantErr: "", + }, + { + testName: "correct chunk with sentence", + text: "Welcome to the MatrixOne documentation center!\n\nThis center holds related concepts and technical architecture introductions, product features, user guides, and reference manuals to help you work with MatrixOne.", + mode: "sentence", + wantReturn: "[[0, 46, \"Welcome to the MatrixOne documentation center!\"], [46, 164, \"\\n\\nThis center holds related concepts and technical architecture introductions, product features, user guides, and reference manuals to help you work with MatrixOne.\"]]", + wantErr: "", + }, + { + testName: "invalid width argument", + text: "hello. hello world", + mode: "fixed_width; a", + wantReturn: "", + wantErr: "invalid input: 'fixed_width; a' is not a valid chunk strategy", + }, + { + testName: "invalid width argument", + text: "hello. hello world", + mode: "fixed_width; -1", + wantReturn: "", + wantErr: "invalid input: 'fixed_width; -1' is not a valid chunk strategy", + }, + { + testName: "invalid chunk strategy", + text: "hello. hello world", + mode: "matrixone", + wantReturn: "", + wantErr: "invalid input: 'matrixone' is not a valid chunk strategy", + }, + { + testName: "empty chunk strategy", + text: "hello. hello world", + mode: "", + wantReturn: "", + wantErr: "invalid input: '' is not a valid chunk strategy", + }, + } + + for _, tc := range tests { + t.Run(tc.testName, func(t *testing.T) { + got, err := ChunkString(tc.text, tc.mode) + if err != nil { + if fmt.Sprintf("%v", err) != tc.wantErr { + t.Errorf("ChunkString() error = %v, wantErr %v", err, tc.wantErr) + } + return + } + if got != tc.wantReturn { + t.Errorf("ChunkString() = %v, want %v", got, tc.wantReturn) + } + }) + } + +} + func TestLLMExtractText(t *testing.T) { testCases := initLLMExtractTextCase() wrongTestCases := initLLMExtractWrongTextCase() @@ -124,4 +234,4 @@ func initLLMExtractWrongTextCase() []tcTemp { func GetFilePath() string { dir, _ := os.Getwd() return dir -} +} \ No newline at end of file diff --git a/pkg/sql/plan/function/function_id.go b/pkg/sql/plan/function/function_id.go index 0e95bc3528fd2..52a66bcc37b9c 100644 --- a/pkg/sql/plan/function/function_id.go +++ b/pkg/sql/plan/function/function_id.go @@ -398,6 +398,8 @@ const ( FULLTEXT_MATCH FULLTEXT_MATCH_SCORE + LLM_CHUNK + // FUNCTION_END_NUMBER is not a function, just a flag to record the max number of function. // TODO: every one should put the new function id in front of this one if you want to make a new function. FUNCTION_END_NUMBER @@ -725,5 +727,5 @@ var functionIdRegister = map[string]int32{ "fulltext_match": FULLTEXT_MATCH, "fulltext_match_score": FULLTEXT_MATCH_SCORE, "llm_extract_text": LLM_EXTRACT_TEXT, - + "llm_chunk": LLM_CHUNK, } diff --git a/pkg/sql/plan/function/list_builtIn.go b/pkg/sql/plan/function/list_builtIn.go index 442ec96b24763..685f708b4d0d0 100644 --- a/pkg/sql/plan/function/list_builtIn.go +++ b/pkg/sql/plan/function/list_builtIn.go @@ -6697,8 +6697,7 @@ var supportedOthersBuiltIns = []FuncNew{ }, }, }, - - // function 'grouping' + // function 'grouping' { functionId: GROUPING, class: plan.Function_STRICT, @@ -6762,6 +6761,27 @@ var supportedOthersBuiltIns = []FuncNew{ }, }, }, + + // function `LLM_CHUNK` + { + functionId: LLM_CHUNK, + class: plan.Function_STRICT, + layout: STANDARD_FUNCTION, + checkFn: fixedTypeMatch, + + Overloads: []overload{ + { + overloadId: 0, + args: []types.T{types.T_datalink, types.T_varchar}, + retType: func(parameters []types.Type) types.Type { + return types.T_text.ToType() + }, + newOp: func() executeLogicOfOverload { + return LLMChunk + }, + }, + }, + }, } // fulltext_match supports varchar, char and text. Expand the function signature to all possible combination of input types diff --git a/test/distributed/cases/function/func_llm_chunk.result b/test/distributed/cases/function/func_llm_chunk.result new file mode 100644 index 0000000000000..d9e824a08c3e1 --- /dev/null +++ b/test/distributed/cases/function/func_llm_chunk.result @@ -0,0 +1,30 @@ +select llm_chunk(cast('file://$resources/llm_test/chunk/1.txt' as datalink), "fixed_width; 2"); +llm_chunk(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/chunk/1.txt as datalink), fixed_width; 2) +[[0, 2, "12"], [2, 2, "34"], [4, 2, "56"], [6, 2, "78"], [8, 2, "90"], [10, 2, "12"], [12, 2, "34"], [14, 2, "56"], [16, 2, "78"], [18, 2, "90"]] +select llm_chunk(cast('file://$resources/llm_test/chunk/1.txt' as datalink), "fixed_width; 30"); +llm_chunk(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/chunk/1.txt as datalink), fixed_width; 30) +[[0, 20, "12345678901234567890"]] +select llm_chunk(cast('file://$resources/llm_test/chunk/2.txt' as datalink), "fixed_width; 2"); +llm_chunk(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/chunk/2.txt as datalink), fixed_width; 2) +[[0, 2, "MO"], [2, 2, "数据"], [4, 1, "库"]] +select llm_chunk(cast('file://$resources/llm_test/chunk/3.txt' as datalink), "paragraph"); +llm_chunk(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/chunk/3.txt as datalink), paragraph) +[[0, 4, "123\n"], [4, 4, "456\n"], [8, 4, "789\n"]] +select llm_chunk(cast('file://$resources/llm_test/chunk/4.txt' as datalink), "sentence"); +llm_chunk(cast(file:///Users/charles/Desktop/codes/matrixone/matrixone/test/distributed/resources/llm_test/chunk/4.txt as datalink), sentence) +[[0, 46, "Welcome to the MatrixOne documentation center!"], [46, 164, "\n\nThis center holds related concepts and technical architecture introductions, product features, user guides, and reference manuals to help you work with MatrixOne."]] +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/1.txt' as datalink), "fixed_width; 2") AS chunks) SELECT CASE WHEN CONCAT(JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[1][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[2][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[3][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[4][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[5][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[6][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[7][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[8][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[9][2]'))) = '12345678901234567890' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; +verification_result +Pass +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/2.txt' as datalink), "fixed_width; 30") AS chunks) SELECT CASE WHEN JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')) = 'MO数据库' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; +verification_result +Pass +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/2.txt' as datalink), "document") AS chunks) SELECT CASE WHEN JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')) = 'MO数据库' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; +verification_result +Pass +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/3.txt' as datalink), "paragraph") AS chunks) SELECT CASE WHEN CONCAT(JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[1][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[2][2]'))) = '123\n456\n789\n' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; +verification_result +Pass +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/4.txt' as datalink), "sentence") AS chunks) SELECT CASE WHEN CONCAT(JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[1][2]'))) = 'Welcome to the MatrixOne documentation center!\n\nThis center holds related concepts and technical architecture introductions, product features, user guides, and reference manuals to help you work with MatrixOne.' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; +verification_result +Pass \ No newline at end of file diff --git a/test/distributed/cases/function/func_llm_chunk.sql b/test/distributed/cases/function/func_llm_chunk.sql new file mode 100644 index 0000000000000..3ac05a05c01e6 --- /dev/null +++ b/test/distributed/cases/function/func_llm_chunk.sql @@ -0,0 +1,24 @@ +select llm_chunk(cast('file://$resources/llm_test/chunk/1.txt' as datalink), "fixed_width; 2"); + +-- correct chunk with large fixed width +select llm_chunk(cast('file://$resources/llm_test/chunk/1.txt' as datalink), "fixed_width; 30"); + +-- chinese character +select llm_chunk(cast('file://$resources/llm_test/chunk/2.txt' as datalink), "fixed_width; 2"); + +-- correct chunk with paragraph +select llm_chunk(cast('file://$resources/llm_test/chunk/3.txt' as datalink), "paragraph"); + +-- correct chunk with sentence +select llm_chunk(cast('file://$resources/llm_test/chunk/4.txt' as datalink), "sentence"); +-- result verification +-- correct chunk with fixed width +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/1.txt' as datalink), "fixed_width; 2") AS chunks) SELECT CASE WHEN CONCAT(JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[1][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[2][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[3][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[4][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[5][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[6][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[7][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[8][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[9][2]'))) = '12345678901234567890' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; + +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/2.txt' as datalink), "fixed_width; 30") AS chunks) SELECT CASE WHEN JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')) = 'MO数据库' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; + +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/2.txt' as datalink), "document") AS chunks) SELECT CASE WHEN JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')) = 'MO数据库' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; + +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/3.txt' as datalink), "paragraph") AS chunks) SELECT CASE WHEN CONCAT(JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[1][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[2][2]'))) = '123\n456\n789\n' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; + +WITH chunked AS (SELECT llm_chunk(cast('file://$resources/llm_test/chunk/4.txt' as datalink), "sentence") AS chunks) SELECT CASE WHEN CONCAT(JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[0][2]')), JSON_UNQUOTE(JSON_EXTRACT(chunks, '$[1][2]'))) = 'Welcome to the MatrixOne documentation center!\n\nThis center holds related concepts and technical architecture introductions, product features, user guides, and reference manuals to help you work with MatrixOne.' THEN 'Pass' ELSE 'Fail' END AS verification_result FROM chunked; \ No newline at end of file diff --git a/test/distributed/resources/llm_test/chunk/1.txt b/test/distributed/resources/llm_test/chunk/1.txt new file mode 100644 index 0000000000000..5df8e4adf2dd9 --- /dev/null +++ b/test/distributed/resources/llm_test/chunk/1.txt @@ -0,0 +1 @@ +12345678901234567890 \ No newline at end of file diff --git a/test/distributed/resources/llm_test/chunk/2.txt b/test/distributed/resources/llm_test/chunk/2.txt new file mode 100644 index 0000000000000..27644b008ab4a --- /dev/null +++ b/test/distributed/resources/llm_test/chunk/2.txt @@ -0,0 +1 @@ +MO数据库 \ No newline at end of file diff --git a/test/distributed/resources/llm_test/chunk/3.txt b/test/distributed/resources/llm_test/chunk/3.txt new file mode 100644 index 0000000000000..0eb7e4c041195 --- /dev/null +++ b/test/distributed/resources/llm_test/chunk/3.txt @@ -0,0 +1,3 @@ +123 +456 +789 \ No newline at end of file diff --git a/test/distributed/resources/llm_test/chunk/4.txt b/test/distributed/resources/llm_test/chunk/4.txt new file mode 100644 index 0000000000000..959d754a40d30 --- /dev/null +++ b/test/distributed/resources/llm_test/chunk/4.txt @@ -0,0 +1,3 @@ +Welcome to the MatrixOne documentation center! + +This center holds related concepts and technical architecture introductions, product features, user guides, and reference manuals to help you work with MatrixOne. \ No newline at end of file