概要

Carnot Searchは、詳細なビジネス情報を見つけるための強力な企業検索機能を提供します。標準版とPro版の両方で、市場調査、リード生成、ビジネスインテリジェンス用の包括的な企業データベースにアクセスできます。

主な機能

CARNOT_SEARCH_CORP

  • 基本的な企業検索機能
  • 名前または条件による企業情報の検索
  • 企業URLとアドレスの取得
  • 設定可能な結果数

CARNOT_SEARCH_CORP_PRO

  • 強化された検索機能
  • より詳細な企業情報
  • 高度なフィルタリングオプション
  • 高い精度とカバレッジ

認証

Carnot Searchは、強化された検索機能のためにPerplexityとOpenAIの両方のAPIキーが必要です。 必要な資格情報:
  • Perplexity APIキー
  • OpenAI APIキー
注意: APIキーは機密情報として扱い、パブリックリポジトリにコミットしないでください。

例: 基本的な企業検索

- id: search_companies
  name: search_companies
  tool: CARNOT_SEARCH_CORP
  config:
    - name: perplexity_api_key
      value: "{{secrets.PERPLEXITY_API_KEY}}"
    - name: openai_api_key
      value: "{{secrets.OPENAI_API_KEY}}"
  input:
    - name: query
      value: "サンフランシスコのソフトウェア会社"
    - name: num_results
      value: 10

- id: process_search_results
  name: process_search_results
  tool: PYTHON_SANDBOX_RUN
  input:
    - name: code
      value: |
        import json
        
        # 検索結果を処理
        results = {{steps.search_companies.result.companies}}
        
        print("企業検索結果:")
        print("=" * 30)
        
        for i, company in enumerate(results, 1):
            print(f"{i}. {company.get('name', '不明')}")
            print(f"   URL: {company.get('url', 'N/A')}")
            print(f"   住所: {company.get('address', 'N/A')}")
            print()
        
        print(f"見つかった企業総数: {len(results)}")

例: 強化されたPro検索

- id: advanced_company_search
  name: advanced_company_search
  tool: CARNOT_SEARCH_CORP_PRO
  config:
    - name: perplexity_api_key
      value: "{{secrets.PERPLEXITY_API_KEY}}"
    - name: openai_api_key
      value: "{{secrets.OPENAI_API_KEY}}"
  input:
    - name: query
      value: "ニューヨークのシリーズA資金調達を受けたフィンテックスタートアップ"
    - name: num_results
      value: 20

- id: analyze_competitive_landscape
  name: analyze_competitive_landscape
  tool: OPENAI_INVOKE
  config:
    - name: version
      value: gpt-4
  input:
    - name: prompt
      value: |
        以下の企業検索結果を分析し、洞察を提供してください:
        
        {{steps.advanced_company_search.result.companies | json}}
        
        以下を提供してください:
        1. 市場トレンド分析
        2. 地理的分布
        3. 企業規模パターン
        4. 主要プレイヤーの特定
        5. 競合状況の概要

- id: export_company_data
  name: export_company_data
  tool: CONVERTER_ARRAY_TO_CSV
  input:
    - name: array
      value: |
        [
          ["企業名", "ウェブサイト", "住所", "検索スコア"],
          {% for company in steps.advanced_company_search.result.companies %}
          ["{{company.name}}", "{{company.url}}", "{{company.address}}", "高"]{% if not loop.last %},{% endif %}
          {% endfor %}
        ]

例: 市場調査ワークフロー

- id: search_competitors
  name: search_competitors
  tool: CARNOT_SEARCH_CORP_PRO
  config:
    - name: perplexity_api_key
      value: "{{secrets.PERPLEXITY_API_KEY}}"
    - name: openai_api_key
      value: "{{secrets.OPENAI_API_KEY}}"
  input:
    - name: query
      value: "{{input.industry}}業界の{{input.target_region}}の企業"
    - name: num_results
      value: 50

- id: enrich_company_data
  name: enrich_company_data
  tool: PYTHON_SANDBOX_RUN
  input:
    - name: code
      value: |
        import json
        import re
        from urllib.parse import urlparse
        
        companies = {{steps.search_competitors.result.companies}}
        enriched_data = []
        
        for company in companies:
            # URLからドメインを抽出
            domain = ""
            if company.get('url'):
                try:
                    domain = urlparse(company['url']).netloc
                except:
                    domain = company['url']
            
            # 住所/説明に基づく企業規模の分析
            size_indicator = "不明"
            address = company.get('address', '').lower()
            if any(term in address for term in ['suite', 'floor', 'building', '階', 'ビル']):
                size_indicator = "中規模-大規模"
            elif any(term in address for term in ['street', 'ave', 'road', '通り', '丁目']):
                size_indicator = "小規模-中規模"
            
            enriched = {
                "name": company.get('name', ''),
                "url": company.get('url', ''),
                "domain": domain,
                "address": company.get('address', ''),
                "estimated_size": size_indicator
            }
            enriched_data.append(enriched)
        
        print(json.dumps(enriched_data, indent=2, ensure_ascii=False))

- id: create_market_report
  name: create_market_report
  tool: OPENAI_INVOKE
  config:
    - name: version
      value: gpt-4
  input:
    - name: prompt
      value: |
        この企業データに基づいて包括的な市場調査レポートを作成してください:
        
        {{steps.enrich_company_data.result.stdout}}
        
        以下を含めてください:
        1. エグゼクティブサマリー
        2. 市場規模評価
        3. 主要プレイヤー分析
        4. 地理的分布
        5. 競合状況
        6. 市場機会
        7. 推奨事項
        
        プロのビジネスレポートとしてフォーマットしてください。

- id: save_market_report
  name: save_market_report
  tool: OUTPUT_FILE
  input:
    - name: content
      value: "{{steps.create_market_report.result.content}}"
    - name: filename
      value: "market_research_report_{{date | format('YYYY-MM-DD')}}.txt"
    - name: fileType
      value: "txt"

例: リード生成パイプライン

- id: find_potential_leads
  name: find_potential_leads
  tool: CARNOT_SEARCH_CORP
  config:
    - name: perplexity_api_key
      value: "{{secrets.PERPLEXITY_API_KEY}}"
    - name: openai_api_key
      value: "{{secrets.OPENAI_API_KEY}}"
  input:
    - name: query
      value: "従業員10-100人の{{input.target_industry}}企業"
    - name: num_results
      value: 25

- id: qualify_leads
  name: qualify_leads
  tool: OPENAI_INVOKE
  config:
    - name: version
      value: gpt-4
  input:
    - name: prompt
      value: |
        これらの潜在的リードを分析し、営業適格のためのスコアを付けてください:
        
        {{steps.find_potential_leads.result.companies | json}}
        
        スコア基準:
        - 企業規模と成長可能性(1-10)
        - 業界適合性(1-10)
        - 地理的アクセス性(1-10)
        - 技術的適合性(1-10)
        
        フォローアップの推奨事項とともにスコア付きリストを返してください。

- id: export_qualified_leads
  name: export_qualified_leads
  tool: CONVERTER_ARRAY_TO_CSV
  input:
    - name: array
      value: |
        [
          ["企業名", "ウェブサイト", "住所", "資格スコア", "優先度", "備考"],
          {% for company in steps.find_potential_leads.result.companies %}
          ["{{company.name}}", "{{company.url}}", "{{company.address}}", "TBD", "中", "フォローアップが必要"]{% if not loop.last %},{% endif %}
          {% endfor %}
        ]

検索パラメータ

クエリ最適化

  • 特定の業界用語を使用
  • 地理的修飾子を含める
  • 関連する場合は企業規模を指定
  • 複雑な検索にはブール演算子を使用

結果管理

  • 小さい結果セットから開始(10-20)
  • 包括的な調査では増加(50+)
  • APIレート制限を考慮
  • 精度とカバレッジのバランス

使用例

  • 市場調査: 競合他社と市場プレイヤーの特定
  • リード生成: 潜在的な顧客とパートナーの発見
  • 投資調査: 市場セクターと機会の分析
  • 競合インテリジェンス: 競合状況の監視
  • パートナーシップ開発: 潜在的なビジネスパートナーの発見
  • 営業見込み: ターゲット見込み客リストの構築
  • デューデリジェンス: ビジネス決定のための企業調査

データ構造

検索結果には以下が含まれます:
{
  "name": "企業名",
  "url": "https://company-website.com",  
  "address": "123 ビジネス通り, 市, 都道府県, 郵便番号"
}

ベストプラクティス

  • クエリ設計: 具体的でターゲット化された検索語を使用
  • 結果処理: 検索結果を常に検証し、エンリッチ
  • レート制限: API制限を尊重し、遅延を実装
  • データ品質: 企業情報をクリーンアップし、検証
  • プライバシー: 企業データを責任を持って合法的に処理