Skip to main content

OpenBB Copilot

OpenBB copilot is your companion to interact with the OpenBB Terminal.

Introduction

open openbb copilot

To open OpenBB Copilot, click on the purple icon located at the center right of the Terminal screen.

Under most circumstances, you can treat OpenBB Copilot like your very own personal research assistant. OpenBB Copilot has access to the widgets on your dashboard, the OpenBB API and any custom endpoints you have added, as well as your uploaded files. Using all of these sources, OpenBB Copilot can assist you in performing a wide variety of tasks.

opened openbb copilot

We'll be exploring each of these features in the following sections below.

How chats work

OpenBB Copilot is a chat-based assistant that uses the conversation history to help answer your queries. This allows you to ask follow-up questions or guide OpenBB Copilot while performing tasks.

For example, if you ask about the price-to-earnings (P/E) ratio, and then follow up by asking about other important financial ratios, OpenBB Copilot will remember the context and suggest relevant ratios:

chat history openbb copilot

If you'd like to clear the history of the current conversation, you can do so by clicking on the trashcan icon in the OpenBB Copilot chatbox in the upper right corner. It is usually a good idea to clear the chat history when you have a new question that is unrelated to your current conversation.

clear chat button openbb copilotcleared chat openbb copilot

General question answering

OpenBB Copilot is capable of answering general financial questions and answers. For example, you can ask Copilot things like:

  • "What's the difference between stocks and bonds?"
  • "Explain inflation."
  • "Can you explain the concept of dollar-cost averaging?"

For general financial questions, OpenBB Copilot will rely on its underlying model's extensive training data to formulate answers. We encourage users to explore this functionality with in-depth and varied questions.

Interacting with Data using OpenBB Copilot

Adding widgets explicitly as context

Sometimes, you might want OpenBB Copilot to analyze only specific widgets on your dashboard. For example, if you want to deep dive into an earnings transcript without considering other data, you can do that.

To focus on certain widgets, click the "Add widgets as context" button on the widgets you want OpenBB Copilot to use. Once selected, OpenBB Copilot will only access data from those widgets, ignoring all others. This allows you to carry out a more targeted analysis while using OpenBB Copilot.

add widget context openbb copilot
query widget context openbb copilot

Automatically using data from the dashboard

OpenBB Copilot is incredibly powerful, as it can access information from all widgets on your current dashboards, the OpenBB API, and your uploaded data. It will begin by scanning your dashboard for relevant information based on your queries. If one is not found, it will move on to the other available sources listed above.

For example, if you ask for a summary of the latest news about Apple, OpenBB Copilot will retrieve the Company News widget data on your dashboard (provided the widget has been added to the dashboard) to provide an answer.

aapl news openbb copilot

Since OpenBB Copilot can access data from any widget in the active dashboard, we encourage users to experiment with adding different kinds of widgets and experimenting with various queries.

For example, OpenBB Copilot is particularly effective at summarizing earnings call transcripts from the "Earnings Transcripts" widget.

Using your own files

OpenBB Copilot can also analyze and answer questions using files you provide, such as PDF, CSV, and XLSX files.

To add a file to OpenBB Copilot, first add it to the currently-active dashboard or click the paper clip icon.

add custom data openbb copilot
query custom data openbb copilot

Once the file widget has been added to your dashboard, you can add it to OpenBB Copilot explicitly by clicking the "add widget to context" button, or you can simply begin querying, and OpenBB Copilot will retrieve the data if it is relevant to your query.

If OpenBB Copilot uses your file widget to answer any part of you query, it will show citations after its answer.

custom pdf copilot chat
note

When uploading files directly to OpenBB Copilot, we use filenames to determine if a file is relevant to your query. For best results, use descriptive filenames. For example, if you have a technical report from Tesla released in 2024, a good filename would be tsla_technical_report_2024.pdf.

Adding custom data sources

The custom data can either be your own files, API endpoints, custom backends or databases.

See Input Data for more details.

Automatically using data sources available to Terminal

As mentioned earlier, OpenBB Copilot can also access external data sources to provide additional insights. This allows you to ask questions that go beyond the data displayed on your dashboard.

External data can either be the OpenBB API or your own custom endpoints.

Querying the OpenBB API

For example, you can ask OpenBB Copilot to fetch the latest stock price for a specific company, or to provide a summary of the latest news for a particular stock without having to add a widget to your dashboard.

openbb copilot api

To query a custom endpoint, please explore the Custom Backend documentation.

Searching the Web

The OpenBB Copilot has the ability to search the web for information that is not available in the data sources it has access to. This allows you to ask questions that go beyond the data displayed on your dashboard.

To search the web, the user needs to be explicit in their query by adding the @web keyword in the query.

web search openbb copilot

Citations, Status Updates, and Artifacts

When querying OpenBB Copilot, it is important to understand which data OpenBB Copilot used to answer your query. As a result, OpenBB Copilot will always cite the data source it referenced when responding to your query.

citations openbb copilot

We go one step further by providing live status updates which notify the user on actions taken by the OpenBB Copilot. For example, if the OpenBB Copilot is querying your uploaded data, it will provide a status update saying "Querying user files".

Artifacts

A special kind of status update is the result artifact which has the final data used to answer the query. It either be a text or a table. The contents of the artifact are produced by the reasoning of the OpenBB Copilot.

result artifact openbb copilot

To ensure transparency and extend the analysis, OpenBB Copilot will also return intermediate result artifacts that were used as reasoning steps to arrive to the final artifact and thus the answer.

intermediate result artifact openbb copilot

Creating widgets from OpenBB Copilot responses

Each time OpenBB Copilot generates a response, it will have a "Create widget from text" or "Create widget from table" button. Clicking this button will create a new widget on your dashboard based on the response.

widget generate button openbb copilotwidget generate button openbb copilotwidget generate button openbb copilot
widget generate button openbb copilotwidget generate button openbb copilotwidget generate button openbb copilot

Prompting guidelines

The OpenBB Copilot is designed to assist you in your research and analysis. To get the most out of OpenBB Copilot, it is important to have a good understanding of prompting techniques.

We recommend reading through the OpenAI Prompt Engineering Guide to learn more about how to structure your prompts to get the best results.