curate_gpt.app package

Submodules

curate_gpt.app.app module

Streamlit app for CurateGPT.

curate_gpt.app.app.ask_chatbot(query, expand=False)
Return type:

ChatResponse

curate_gpt.app.app.filtered_collection_names()
Return type:

List[str]

curate_gpt.app.app.get_chat_agent()
Return type:

Union[ChatAgent, BaseWrapper]

curate_gpt.app.app.html_table(rows)
Return type:

str

curate_gpt.app.cart module

class curate_gpt.app.cart.Cart(**data)

Bases: BaseModel

A cart is a list of items that can be added to or removed from

add(item)
items: List[CartItem]
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'items': FieldInfo(annotation=List[curate_gpt.app.cart.CartItem], required=False, default=[])}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

remove(item)
property size
class curate_gpt.app.cart.CartItem(**data)

Bases: BaseModel

A cart item is a single item in a cart

metadata: Optional[Dict]
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[Dict[str, FieldInfo]] = {'metadata': FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None), 'object': FieldInfo(annotation=Union[Dict, BaseModel], required=True), 'object_type': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'source': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

object: Union[Dict, BaseModel]
object_type: Optional[str]
source: Optional[str]

curate_gpt.app.components module

class curate_gpt.app.components.DimensionalityReductionOptions(value)

Bases: str, Enum

An enumeration.

PCA = 'PCA'
TSNE = 't-SNE'
UMAP = 'UMAP'
curate_gpt.app.components.limit_slider_component(name='Max examples', tooltip='\nExamples that are similar to your query are picked from the selected\nknowledge base, and used as context to guide the LLM.\nIf you pick too many examples, it may go beyond the limits of the context window\nfor the model you selected.\n')
curate_gpt.app.components.vectors_to_fig(labels, vectors, method=None)

curate_gpt.app.helper module

Utilities for streamlit app.

curate_gpt.app.helper.get_applicable_examples(collection, mode, relax=True)

Get applicable examples for a given collection and mode.

Parameters:
  • collection (Optional[str])

  • mode (str)

Return type:

List[Dict]

Returns:

curate_gpt.app.helper.get_case_collection()

curate_gpt.app.state module

class curate_gpt.app.state.ApplicationState(page=None, db=<factory>, extractor=<factory>, cart=<factory>, page_states=<factory>)

Bases: object

cart: Cart
db: DBAdapter
extractor: Extractor
get_page_state(page_name)
Return type:

PageState

page: Optional[str] = None
page_states: Dict[str, PageState]
class curate_gpt.app.state.PageState(predicted_object=None, chat_response=None, results=None, selected=None)

Bases: object

chat_response: ChatResponse = None
predicted_object: AnnotatedObject = None
results: List = None
selected: Any = None
curate_gpt.app.state.get_state(st)

Gets the application state from the streamlit session state

Parameters:

st

Return type:

ApplicationState

Returns:

Module contents