You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/sdg/sdg-flow-yaml.md
+28
Original file line number
Diff line number
Diff line change
@@ -104,7 +104,35 @@ TODO: figure out how we want to handle these.
104
104
Custom pipelines may have more unique model serving requirements. Instead of serving just one model, we may need to launch the model server with a model and an additional model with adapter.
105
105
106
106
How should this be expressed in a flow configuration? Can it be inferred, or are explicit options needed?
107
+
### CLI Integration
107
108
109
+
As of the current version of `ilab`, it supports `simple` and `full` as parameters to `--pipeline` to select one of the two types of built-in pipelines included in the library. Once we have support for loading custom pipelines, we need a way for these to be specified with the CLI. Here is a proposed CLI UX for this:
110
+
111
+
> `ilab data generate`
112
+
113
+
Use the default pipeline, `simple`.
114
+
115
+
> `ilab data generate --pipeline full`
116
+
117
+
Use the built-in `full` pipeline.
118
+
119
+
> `ilab data generate --pipeline full --pipeline-extend path/to/config.yaml`
120
+
121
+
Use the `full` pipeline, but extend it with the pipeline defined in the provided config file.
122
+
123
+
> `ilab data generate --pipeline none --pipeline-extend path/to/other_config.yaml`
124
+
125
+
Do not use a built-in pipeline. Use only the pipeline in the custom configuration.
126
+
127
+
### Future CLI Improvements
128
+
129
+
A possible improvement would be to have a well-defined place on the filesystem where custom pipeline configs can be automatically loaded and included as options to the `--pipeline` parameter.
130
+
131
+
For example, if the config format included new parameters, `name: full-extended` and `extends: full`, and the CLI discovered and loaded it automatically, we could support `--pipeline full-extended` without needing the additional `--pipeline-extend` option.
132
+
133
+
`/usr/share/instructlab/sdg/`is a proposed location for this as a place for a distribution of InstructLab to include pre-defined custom pipelines, at least for Linux. See the [Filesystem Hierarchy Standard](https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s11.html) for more details on why this path is appropriate for this use-case.
134
+
135
+
It would also make sense to support a configuration directory for user's own custom pipeline configurations. Assuming there is a base config directory, these could go in a `sdg` subdirectory. There is a separate proposal that discusses a proposed configuration location: <https://github.com/instructlab/dev-docs/pull/104>. Note this is separate from the distribution-provided, read-only pipelines discussed above with a different location.
108
136
## Alternative Approaches
109
137
110
138
Alternatives already considered and discarded are listed below.
0 commit comments