File size: 941 Bytes
20555bc
 
 
 
 
 
156199c
20555bc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d5d78f3
156199c
20555bc
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import os

from langchain.document_loaders.csv_loader import CSVLoader
from langchain.embeddings.openai import OpenAIEmbeddings
import json

from Brain.src.model.req_model import ReqModel
from ..common.utils import OPENAI_API_KEY


def csv_embed():
    file_path = os.path.dirname(os.path.abspath(__file__))
    loader = CSVLoader(
        file_path=f"{file_path}/guardrails-config/actions/phone.csv", encoding="utf8"
    )
    data = loader.load()

    result = list()
    for t in data:
        query_result = get_embed(t.page_content)
        result.append(query_result)
    with open(f"{file_path}/guardrails-config/actions/phone.json", "w") as outfile:
        json.dump(result, outfile, indent=2)


"""getting embed"""


def get_embed(data: str, setting: ReqModel) -> list[float]:
    embeddings = OpenAIEmbeddings(openai_api_key=setting.openai_key)
    return embeddings.embed_query(data)


if __name__ == "__main__":
    csv_embed()