Skip to content

Instantly share code, notes, and snippets.

View takahirom's full-sized avatar

Takahiro Menju takahirom

View GitHub Profile
@takahirom
takahirom / create_draft_pr.sh
Last active April 10, 2025 11:04
my stacked pr workflow
#!/bin/bash
set -e
# Check if gh CLI is installed
if ! command -v gh &> /dev/null; then
echo "gh CLI is not installed. Please install it from https://cli.github.com/."
exit 1
fi
# Get the current branch name
@takahirom
takahirom / SingleSourceStateFlow.kt
Last active January 30, 2025 07:47
Solution for the "Combined StateFlow getValue Not Updated" Problem https://pl.kotl.in/eEOTmPYEI
/**
Copyright 2025 takahirom
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
@takahirom
takahirom / calc_softmax.py
Created November 9, 2024 13:23
Softmax calculation in Python in Japanese
import torch
from transformers import top_k_top_p_filtering
logits = torch.tensor([2.0, 1.8, 1.5, 1.0, 0.5])
words = ["頑張る", "成長する", "学ぶ", "健康", "新しい"]
def get_probabilities_hf(temperature, k=None, p=None):
scaled_scores = logits / temperature
# kとpがNoneの場合、デフォルト値を設定
@takahirom
takahirom / ja_softmax.kt
Created November 9, 2024 13:21
Softmax calculation in Kotlin in Japanese
val logits = arrayOf(2.0, 1.8, 1.5, 1.0, 0.5)
val words = arrayOf("頑張る", "成長する", "学ぶ", "健康", "新しい")
fun getProbabilitiesHf(temperature: Double, k: Int? = null, p: Double? = null) {
val defaultK = k ?: 0 // kがnullの場合は0(フィルタリングなし)
val defaultP = p ?: 1.0 // pがnullの場合は1.0(フィルタリングなし)
// スコアを温度でスケーリング
val scaledScores = logits.map { it / temperature }.toDoubleArray()
println("scaledScores:" + scaledScores.joinToString())
# You will need to take full responsibility for your action.
# only once
brew install mitmproxy
ifconfig|grep 192.168 |awk '{print $2}'|xargs -IIPADDRESS adb shell settings put global http_proxy IPADDRESS:8083
mitmweb -p 8083
adb shell am start -a android.intent.action.VIEW -d "http://mitm.it"
# download and install pem
# each time you want to do mitm
@takahirom
takahirom / OneOffEventForSnackbar.kt
Created June 2, 2022 23:41
One-off event for snackbar message
// ---- User side (Write every time) ----
val scaffoldState = rememberScaffoldState()
val viewModel = hiltViewModel<FooViewModel>()
SnackbarMessageEffect(
scaffoldState = scaffoldState,
messageStateHolder = viewModel
)
Scaffold(scaffoldState = scaffoldState) {
...
// ----UI Layer----
// -UI Layer(UI element)-
@AndroidEntryPoint
class ArticlesActivity : AppCompatActivity() {
// UI 1. ✅ You shouldn't store or keep in memory any application
// data or state in your app components
lateinit var binding: ActivityArticlesBinding
private val articlesViewModel by viewModels<ArticlesViewModel>()
@Stable
data class UiModel(val articles: Articles)
@Composable
fun Composable2(uiModel: UiModel) {
Text(text = "Hello $uiModel!")
}
data class Articles(val articles: List<Article>)
data class Article(val title: String)
@takahirom
takahirom / Composables.kt
Created March 27, 2022 07:40
app module
@Composable
fun Composable1(articles: Articles) {
Text(text = "Hello $articles!")
}
@Stable
data class UiModel(val articles: Articles)
@Composable
fun Composable2(uiModel: UiModel) {