Class EmbeddingTools
public class EmbeddingTools : IEmbeddingTools, IEmbeddingToolsAdvanced
- Inheritance
-
EmbeddingTools
- Implements
- Inherited Members
Constructors
EmbeddingTools(IOpenAIService, int, string)
public EmbeddingTools(IOpenAIService sdk, int maxToken, string embeddingModel)
Parameters
sdk
IOpenAIServicemaxToken
intembeddingModel
string
Methods
AddEmbeddingsToDf(DataFrame, List<EmbeddingCreateResponse>)
Adds embeddings to the DataFrame and handles any unsuccessful embedding results.
public DataFrame AddEmbeddingsToDf(DataFrame df, List<EmbeddingCreateResponse> embeddingResults)
Parameters
df
DataFrameembeddingResults
List<EmbeddingCreateResponse>
Returns
- DataFrame
ClearTempCsv(string)
public void ClearTempCsv(string outputFilePath)
Parameters
outputFilePath
string
CreateContext(string, DataFrame, int)
public string CreateContext(string question, DataFrame df, int maxLen = 1800)
Parameters
Returns
DistancesFromEmbeddings(List<double>, DataFrameColumn)
public PrimitiveDataFrameColumn<double> DistancesFromEmbeddings(List<double> qEmbeddings, DataFrameColumn embeddingsColumn)
Parameters
Returns
- PrimitiveDataFrameColumn<double>
GetEmbeddings(IEnumerable<string>)
Returns a list of EmbeddingResults by running each text through an EmbeddingCreateRequest.
public Task<List<EmbeddingCreateResponse>> GetEmbeddings(IEnumerable<string> texts)
Parameters
texts
IEnumerable<string>
Returns
LoadEmbeddedDataFromCsv(string)
public DataFrame LoadEmbeddedDataFromCsv(string path)
Parameters
path
string
Returns
- DataFrame
LoadFile(string)
Reads a file and returns a TextEmbeddingData object.
public TextEmbeddingData? LoadFile(string file)
Parameters
file
string
Returns
LoadFilesFromDirectory(string)
Loads all files from a directory and returns a list of TextEmbeddingData.
public IEnumerable<TextEmbeddingData> LoadFilesFromDirectory(string pathToDirectory)
Parameters
pathToDirectory
string
Returns
PerformTextEmbedding(IEnumerable<TextEmbeddingData>, string)
Performs text embedding on input data, then saves and returns the resulting DataFrame.
public Task<DataFrame> PerformTextEmbedding(IEnumerable<TextEmbeddingData> textEmbeddingData, string outputFilePath)
Parameters
textEmbeddingData
IEnumerable<TextEmbeddingData>outputFilePath
string
Returns
- Task<DataFrame>
ReadAllDataInFolderAndCreateEmbeddingData(string, string)
public Task<DataFrame> ReadAllDataInFolderAndCreateEmbeddingData(string pathToDirectory, string outputFileName)
Parameters
Returns
- Task<DataFrame>
ReadAndSplitData(string)
Reads data from a CSV file and splits the text based on specific conditions.
public DataFrame ReadAndSplitData(string outputFilePath)
Parameters
outputFilePath
string
Returns
- DataFrame
ReadFilesAndCreateEmbeddingDataAsCsv(IEnumerable<string>, string)
public Task<DataFrame> ReadFilesAndCreateEmbeddingDataAsCsv(IEnumerable<string> pathsToDirectoriesOrFiles, string outputFileName)
Parameters
pathsToDirectoriesOrFiles
IEnumerable<string>outputFileName
string
Returns
- Task<DataFrame>
ReadFilesAndCreateEmbeddingDataAsCsv(string, string)
public Task<DataFrame> ReadFilesAndCreateEmbeddingDataAsCsv(string pathToDirectoryOrFile, string outputFileName)
Parameters
Returns
- Task<DataFrame>
SaveDfToCsv(DataFrame, string)
Writes the DataFrame to a CSV file at the specified file path.
public void SaveDfToCsv(DataFrame df, string outputFilePath)
Parameters
df
DataFrameoutputFilePath
string
SplitIntoMany(string)
Splits a given text into chunks, ensuring that no chunk exceeds a maximum token count.
public IEnumerable<string> SplitIntoMany(string text)
Parameters
text
stringThe text to be split.
Returns
- IEnumerable<string>
A list of chunks split from the input text.
WriteToTempCsv(IEnumerable<TextEmbeddingData>, string)
Writes the provided data to a CSV file at the specified file path.
public Task WriteToTempCsv(IEnumerable<TextEmbeddingData> textEmbeddingData, string outputFilePath)
Parameters
textEmbeddingData
IEnumerable<TextEmbeddingData>outputFilePath
string