YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches

GPTDevice: A yarp device for interacting with the GPT model More...

#include </home/runner/work/yarp-documentation/yarp-documentation/yarp/opt-modules/yarp-devices-llm/src/devices/GPTDevice/GPTDevice.h>

+ Inheritance diagram for GPTDevice:

Public Member Functions

 GPTDevice ()
 
 GPTDevice (const GPTDevice &)=delete
 
 GPTDevice (GPTDevice &&) noexcept=delete
 
GPTDeviceoperator= (const GPTDevice &)=delete
 
GPTDeviceoperator= (GPTDevice &&) noexcept=delete
 
 ~GPTDevice () override=default
 
yarp::dev::ReturnValue setPrompt (const std::string &prompt) override
 Performs a question.
 
yarp::dev::ReturnValue readPrompt (std::string &oPrompt) override
 Retrieves the provided prompt.
 
yarp::dev::ReturnValue ask (const std::string &question, yarp::dev::LLM_Message &oAnswer) override
 Performs a question.
 
yarp::dev::ReturnValue getConversation (std::vector< yarp::dev::LLM_Message > &oConversation) override
 Retrieves the whole conversation.
 
yarp::dev::ReturnValue deleteConversation () noexcept override
 Delete the conversation and clear the system context from any internally stored context.
 
yarp::dev::ReturnValue refreshConversation () noexcept override
 Refresh the conversation.
 
bool open (yarp::os::Searchable &config) override
 Open the DeviceDriver.
 
bool close () override
 Close the DeviceDriver.
 
- Public Member Functions inherited from yarp::dev::ILLM
virtual ~ILLM ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::DeviceDriver
 DeviceDriver ()
 
 DeviceDriver (const DeviceDriver &other)=delete
 
 DeviceDriver (DeviceDriver &&other) noexcept=delete
 
DeviceDriveroperator= (const DeviceDriver &other)=delete
 
DeviceDriveroperator= (DeviceDriver &&other) noexcept=delete
 
virtual ~DeviceDriver ()
 
virtual std::string id () const
 Return the id assigned to the PolyDriver.
 
virtual void setId (const std::string &id)
 Set the id for this device.
 
template<class T >
bool view (T *&x)
 Get an interface to the device driver.
 
virtual DeviceDrivergetImplementation ()
 Some drivers are bureaucrats, pointing at others.
 
- Public Member Functions inherited from GPTDevice_ParamsParser
 GPTDevice_ParamsParser ()
 
 ~GPTDevice_ParamsParser () override=default
 
bool parseParams (const yarp::os::Searchable &config) override
 Parse the DeviceDriver parameters.
 
std::string getDeviceClassName () const override
 Get the name of the DeviceDriver class.
 
std::string getDeviceName () const override
 Get the name of the device (i.e.
 
std::string getDocumentationOfDeviceParams () const override
 Get the documentation of the DeviceDriver's parameters.
 
std::vector< std::string > getListOfParams () const override
 Return a list of all params used by the device.
 
bool getParamValue (const std::string &paramName, std::string &paramValue) const override
 Return the value (represented as a string) of the requested parameter.
 
std::string getConfiguration () const override
 Return the configuration of the device.
 
- Public Member Functions inherited from yarp::dev::IDeviceDriverParams
virtual ~IDeviceDriverParams ()
 

Additional Inherited Members

- Public Attributes inherited from GPTDevice_ParamsParser
const std::string m_device_classname = {"GPTDevice"}
 
const std::string m_device_name = {"GPTDevice"}
 
bool m_parser_is_strict = false
 
const parser_version_type m_parser_version = {}
 
std::string m_provided_configuration
 
const std::string m_api_version_defaultValue = {"2023-07-01-preview"}
 
const std::string m_prompt_file_defaultValue = {""}
 
const std::string m_prompt_context_defaultValue = {"GPTDevice"}
 
const std::string m_function_file_defaultValue = {""}
 
const std::string m_json_context_defaultValue = {"GPTDevice"}
 
std::string m_api_version = {"2023-07-01-preview"}
 
std::string m_prompt_file = {}
 
std::string m_prompt_context = {"GPTDevice"}
 
std::string m_function_file = {}
 
std::string m_json_context = {"GPTDevice"}
 

Detailed Description

GPTDevice: A yarp device for interacting with the GPT model

GPTDevice

Parameters required by this device are described in class GPTDevice_ParamsParser

Definition at line 36 of file GPTDevice.h.

Constructor & Destructor Documentation

◆ GPTDevice() [1/3]

GPTDevice::GPTDevice ( )
inline

Definition at line 41 of file GPTDevice.h.

◆ GPTDevice() [2/3]

GPTDevice::GPTDevice ( const GPTDevice )
delete

◆ GPTDevice() [3/3]

GPTDevice::GPTDevice ( GPTDevice &&  )
deletenoexcept

◆ ~GPTDevice()

GPTDevice::~GPTDevice ( )
overridedefault

Member Function Documentation

◆ ask()

yarp::dev::ReturnValue GPTDevice::ask ( const std::string &  question,
yarp::dev::LLM_Message answer 
)
overridevirtual

Performs a question.

Parameters
questionthe text of the question provided by the user
answerthe returned answer
Returns
true/false

Implements yarp::dev::ILLM.

Definition at line 90 of file GPTDevice.cpp.

◆ close()

bool GPTDevice::close ( )
overridevirtual

Close the DeviceDriver.

Returns
true/false on success/failure.

Reimplemented from yarp::dev::DeviceDriver.

Definition at line 242 of file GPTDevice.cpp.

◆ deleteConversation()

yarp::dev::ReturnValue GPTDevice::deleteConversation ( )
overridevirtualnoexcept

Delete the conversation and clear the system context from any internally stored context.

Returns
true/false

Implements yarp::dev::ILLM.

Definition at line 224 of file GPTDevice.cpp.

◆ getConversation()

yarp::dev::ReturnValue GPTDevice::getConversation ( std::vector< yarp::dev::LLM_Message > &  conversation)
overridevirtual

Retrieves the whole conversation.

Parameters
conversationthe conversation
Returns
true/false

Implements yarp::dev::ILLM.

Definition at line 192 of file GPTDevice.cpp.

◆ open()

bool GPTDevice::open ( yarp::os::Searchable config)
overridevirtual

Open the DeviceDriver.

Parameters
configis a list of parameters for the device. Which parameters are effective for your device can vary. If there is no example for your device, you can run the "yarpdev" program with the verbose flag set to probe what parameters the device is checking. If that fails too, you'll need to read the source code (please nag one of the yarp developers to add documentation for your device).
Returns
true/false upon success/failure

Reimplemented from yarp::dev::DeviceDriver.

Definition at line 16 of file GPTDevice.cpp.

◆ operator=() [1/2]

GPTDevice & GPTDevice::operator= ( const GPTDevice )
delete

◆ operator=() [2/2]

GPTDevice & GPTDevice::operator= ( GPTDevice &&  )
deletenoexcept

◆ readPrompt()

yarp::dev::ReturnValue GPTDevice::readPrompt ( std::string &  oPrompt)
overridevirtual

Retrieves the provided prompt.

Parameters
promptthe stored prompt
Returns
true/false

Implements yarp::dev::ILLM.

Definition at line 177 of file GPTDevice.cpp.

◆ refreshConversation()

yarp::dev::ReturnValue GPTDevice::refreshConversation ( )
overridevirtualnoexcept

Refresh the conversation.

Returns
true/false

Implements yarp::dev::ILLM.

Definition at line 233 of file GPTDevice.cpp.

◆ setPrompt()

yarp::dev::ReturnValue GPTDevice::setPrompt ( const std::string &  prompt)
overridevirtual

Performs a question.

Parameters
promptprovides a prompt to the LLM
Returns
true/false

Implements yarp::dev::ILLM.

Definition at line 153 of file GPTDevice.cpp.


The documentation for this class was generated from the following files: