Skip to main content

llama-index packs self_discover paper implementation

Project description

Self-Discover LlamaPack

This LlamaPack implements Self-Discover: Large Language Models Self-Compose Reasoning Structures paper.

It has two stages for the given task:

  1. STAGE-1:

    a. SELECT: Selects subset of reasoning Modules.

    b. ADAPT: Adapts selected reasoning modules to the task.

    c. IMPLEMENT: It gives reasoning structure for the task.

  2. STAGE-2: Uses the generated reasoning structure for the task to generate an answer.

The implementation is inspired from the codebase

CLI Usage

You can download llamapacks directly using llamaindex-cli, which comes installed with the llama-index python package:

llamaindex-cli download-llamapack SelfDiscoverPack --download-dir ./self_discover_pack

You can then inspect the files at ./self_discover_pack and use them as a template for your own project!

Code Usage

There are two ways using LlamaPack:

  1. Do download_llama_pack to load the Self-Discover LlamaPack.
  2. Directly use SelfDiscoverPack

Using download_llama_pack

from llama_index.core.llama_pack import download_llama_pack

# download and install dependencies
SelfDiscoverPack = download_llama_pack(
    "SelfDiscoverPack", "./self_discover_pack"
)

self_discover_pack = SelfDiscoverPack(verbose=True, llm=llm)

Directly use SelfRAGPack

from llama_index.packs.self_discover import SelfDiscoverPack

self_discover_pack = SelfRAGPack(llm=llm, verbose=True)

The run() function serves as a concise wrapper that implements the logic outlined in the "self-discover" paper, applying it to a sample task as illustrated below.

Emma needs to prepare 50 invitations for her upcoming birthday party. She can handwrite 10 invitations in an hour. After working for 2 hours, she takes a break for 30 minutes. If she resumes writing at the same pace, how long will it take her to complete all 50 invitations?

output = pack.run("<task>")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llama_index_packs_self_discover-0.3.1.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file llama_index_packs_self_discover-0.3.1.tar.gz.

File metadata

File hashes

Hashes for llama_index_packs_self_discover-0.3.1.tar.gz
Algorithm Hash digest
SHA256 49d2b3f9237e3e4c83188ef21ef73aa6aa7629182c6b2dc749c80722a3ba5aca
MD5 6848473bfdef1f33893424b0cfa3425a
BLAKE2b-256 f9875665c19fa823cbb0b8ae3afb415932976bf5edc7a11f7f7a7aabb6f9103e

See more details on using hashes here.

File details

Details for the file llama_index_packs_self_discover-0.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for llama_index_packs_self_discover-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d52fc92c7effacbfd0b2cb0a063ed9ab724100b4daeba241a3bd3c8e816353a8
MD5 c483f23f1e562a44b9b42da3dfe58e24
BLAKE2b-256 8f12b5c6d5b48881e765d5f1fe71be656d938ce6bb93763e7540469526c0b41f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page