• 0% To Do, 0% In Progress, 100% Done
    • Not Selected
    • False
    • Hide

      None

      Show
      None

      Feature Overview: 

      Need a consistent SDK API schema defined for the e2e InstructLab workflow.

      Goals:

      • As SDG works on developing and exposing features through an SDK API, we need to define a consistent SDK API contract for all of InstructLab so there can be consistency for users across the libraries. 
      • Design a workflow for advanced users to use Instruct Lab through SDK API calls in Jupyter notebooks.
      • This SDK should encompass ilab specific commands such as `config init`, but not require these as pre-requisites to execute other parts of the SDK

      Requirements (mandatory -_ Complete while in Refinement status):

      • API definitions need to be planned in a way that allows flexibility for different teams to run the model.  
      • Standardize SDK API specifications - ensure consistency and that they work together
      • Ability for the SDK APIs for each of the libraries to be run independently:
        • SDK API contracts for SDG preprocessing, postprocessing, generate, and annotate capabilities
        • SDK API contracts for training
        • SDK API contracts for evaluation  
      • The API schema needs to be extensible - as we add new functionality, especially functionality that will need to be exposed either only through or in an advanced capacity through the SDK API, we need to build this v0 schema to ensure it accommodates future vision.

      Done - Acceptance Criteria (mandatory - Complete while in Refinement status):
      Acceptance Criteria articulates and defines the value proposition - what is required to meet the goal and intent of this Feature. The Acceptance Criteria provides a detailed definition of scope and the expected outcomes - from a users point of view

      • An advanced user (data scientist/enterprise software developer) is able to run SDG, annotation, subset selection, train a detailed definition of scope new model, evaluate model in Jupyter notebooks.

      Use Cases - i.e. User Experience & Workflow: (Initial completion while in Refinement status):
      Include use case diagrams, main success scenarios, alternative flow scenarios.
      <your text here>

      Out of Scope {}{}(Initial completion while in Refinement status):
      High-level list of items or persona’s that are out of scope.
      <your text here>

      Documentation Considerations {}{}(Initial completion while in Refinement status):
      Provide information that needs to be considered and planned so that documentation will meet customer needs. If the feature extends existing functionality, provide a link to its current documentation..

      • Document how to run the e2e workflow through APIs for SDG, training, eval.

      Questions to Answer {}{}(Initial completion while in Refinement status):
      Include a list of refinement / architectural questions that may need to be answered before coding can begin.

      •  How do we expose more advanced knobs to the users that are currently not enabled through CLI, while also maintaining a standardized user experience?
        • Advanced users would be interested in playing with the knobs that can be exposed through the SDK API, allowing enterprise developers/data scientists to improve the performance of the fine-tuned models.

       

      Background and Strategic Fit (Initial completion while in Refinement status):
      Provide any additional context is needed to frame the feature.
      <your text here>

      Customer Considerations {}{}(Initial completion while in Refinement status):
      Provide any additional customer-specific considerations that must be made when designing and delivering the Feature.
      <your text here>

              jepandit@redhat.com Jehlum Vitasta Pandit
              jepandit@redhat.com Jehlum Vitasta Pandit
              Aditi Saluja, William Caban
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: